home *** CD-ROM | disk | FTP | other *** search
Text File | 1989-05-26 | 230.0 KB | 4,443 lines |
- The Hacker's Dictionary
-
-
-
-
- A Guide to the World of Computer Wizards
-
- Guy L. Steele Jr.
- Donald R. Woods
- Raphael A. Finkel
- Mark R. Crisp
- Richard M. Stallman
- Geoffrey S. Goodfellow
-
-
- The Menu
-
- There are many dictionaries of computer buzzwords and jargon. This
- book is different. It is a dictionary of slang.
- Jargon consists of technical words that are needed for very
- precise communication in a specialized subject. Economists, truck
- drivers, chemists, and steelworkers all use a specialized vocabulary to
- convey technical meanings.
- Slang, on the other hand, is used for fun, for human communication
- rather than technical communication. Slang is often derived from
- jargon. When a bit of technical jargon is used in an extended or
- metaphorical way, it becomes slang.
- Many "computer" words are making their way into everyday use.
- Thanks to the proliferation of home computers, many people have heard
- of bytes, RAM, memory banks, terminals, processors, and floppy disks.
- You won't find those words defined here. This, we warn you, is
- supposed to be a fun book.
- These are the words used for fun by the people who use computers
- for fun: the hackers. Here you will find almost nothing of those awful
- computer languages such as BASIC that can be written but not spoken.
- This book is, in fact, a revised version of the famous "jargon file",
- a dictionary of slang terms cooperatively maintained by hackers at
- advanced computer laboratories at Stanford University, The Mas-
- sachusetts Institute of Technology (MIT), Carnegie-Mellon University
- (CMU), and other places such as Yale University, Princeton University,
- and Worcester Polytechnic Institute (WPI). Some of these words are
- fairly new; others have been used for over two decades. Some arose in
- the computer laboratory; others were borrowed from other fields.
- Our gang of six contributed to this file over the years, and to
- this revision for publication. (Steele coordinated the effort and did
- most of the polish work. Occasional first-person references in the main
- text are his unless otherwise identified). Many other hackers around
- the country, too numerous to list, made helpful suggestions; to them we
- are grateful. For this edition, pronunciation keys have been added for
- all those words that are not ordinary English words, and many cross-
- -references, examples, and explanatory notes have been added. We have
- tried to keep technical details to a minimum. A word is included only
- if it is amusing or unusual, or if it peculiarly illuminates some
- aspect if hacker culture.
- We hope you enjoy this book.
- Confessions of a Happy Hacker By Guy Steele
-
- I was a teen-age hacker.
- When I was about twelve or so, a lab secretary at MIT who knew I
- was "interested in science" (it might be more accurate to say "a latent
- nerd") arranged for one of the computer hackers there to give me an
- informal tour. I remember stumbling around racks full of circuit boards
- and wires, a screeching cabinet that printed a full page every six
- seconds, and rows of blinking lights: the computer room was crammed
- full of equipment with no obvious organization. One set of gray
- cabinets had some trophies and plaques sitting on it: this was the
- PDP-6 computer that, running a program called MacHack, consistently won
- prizes by outwitting human players in chess tournaments. This PDP-6 was
- also versatile: it had two speakers and a stereo amplifier sitting on
- top of it. The hacker typed a couple of commands on a keyboard, and the
- PDP-6 burst into a Bach Brandenburg Concerto (no. 6, as I recall).
- One part of that tour stands out most clearly in my mind. I was
- told to sit down in front of a large, round, glass screen, and given a
- box that had some buttons and a stick on the top. My hacker guide typed
- a command on the keyboard, and suddenly, green and purple space ships
- appeared on the screen! The purple one started shooting little red dots
- at the green one, which was soon obliterated in a multicolored shower
- of sparkles. The green ship was "mine", and the hacker had expertly
- shot it down. This was a color version of Space War, one of the very
- first video games.
- Remember that this was years before "Apple" and "TRS-80" had
- become household words. Back then computers were still rather mys-
- terious, hidden away in giant corporations and university laboratories.
- Playing Space War was fun, but I learned nothing of programming
- then. I had the true fascination of computers revealed to me in
- November, 1968, when a chum slipped me the news that our school (Boston
- Latin School, of Boston, Massachusetts) had an IBM computer locked up
- in the basement. I was dubious. I had earlier narrowly avoided buying
- from a senior a ticket to the fourth-floor swimming pool (Boston Latin
- has only three stories, and no swimming pool at all), and assumed this
- was another scam. So of course I laughed in his face.
- When he persisted, I checked it out. Sure enough, in a locked
- basement room was and IBM 1130 computer. If you want all the specs:
- 4096 words of memory, 16 bits per word, a 15-character-per-second
- Selectric ("golf ball") printer, and a card reader (model 1442) that
- could read 300 cards per minute. Yes, this was back in the days of
- punched cards. Personal computers were completely unheard-of then.
- Nominally the computer was for the training of juniors and seniors, but
- I cajoled a math teacher into lending me a computer manual and spent
- all of Thanksgiving vacation reading it.
- I was hooked.
- No doubt about it. I was born to be a hacker. Fortunately, I
- didn't let my studies suffer (as many young hackers do), but every
- spare moment I thought about the computer. It was spellbinding. I
- wanted to know all about it: what it could and couldn't do, how its
- programs worked, what its circuits looked like. During study halls,
- lunch, and after school, I could be found in the computer room,
- punching programs onto cards and running them through the computer.
-
- I was not the only one. Very soon there was a small community of
- IBM 1130 hackers. We helped to maintain the computer and we tutored our
- less fanatical fellow students in the ways of computing. What could
- possibly compensate us for these chores? Free rein in the computer
- room.
- Soon after that, I developed into one of the unauthorized but
- tolerated "random people" hanging around the MIT Artificial Intel-
- ligence Laboratory much as a groupie is to a rock band: not really
- doing useful work, but emotionally involved and contributing to the
- ambiance, if nothing else. After a while, I was haunting the computer
- rooms at off-hours, talking to people but more often looking for
- chances to run programs. Sometimes "randoms" such as I were quite
- helpful, operating the computers for no pay and giving advice to
- college students who were having trouble. Sometimes, however, we were
- quite a nuisance. Once, I was ejected from the Artificial Intelligence
- Laboratory by none other than Richard Greenblatt, the very famous
- hacker who wrote the MacHack program with which the PDP-6 had won its
- chess trophies. He threw me out because I was monopolizing the one
- terminal that produced letter-quality copy. (I was using the computer
- to write "personalized" form letters to various computer manufacturers,
- asking for machine manuals.) I deserved to be tossed out, and gave him
- no argument. But when you're hooked, you're hooked, and I was un-
- daunted: within a week or two I was back again.
-
- Eventually I got a part-time job as a programmer at MIT's Project
- MAC computer laboratory. There I became a full-fledged member of the
- hacker community, and ultimately an MIT graduate student.
- I was never a lone hacker, but one of many. Despite stories you
- may have read about anti-social nerds glued permanently to display
- screens, totally addicted to the computer, hackers have (human) friends
- too. Often these friendships are formed and maintained through the
- computer.
- At one time, the MIT Artificial Intelligence Laboratory had one
- common telephone number, extension 6765, and a public-address system.
- The phone was answered "six-seven-six-five", or sometimes "Fibonacci of
- twenty", since, as mathematician know, 6765 is the twentieth Fibonacci
- number. Through this number and the public-address system, it was easy
- to cal and reach anyone and everyone. In particular, one could easily
- ask, "Who wants to go for Chinese food?" and get ten or fifteen people
- for an expedition.
- "Unfortunately", says MIT hacker Richard Stallman, "most of the
- people and terminals have moved to other floors, where the 6765 number
- does not reach. The ninth floor, the lab's ancient heart, is becoming
- totally filled with machines, leaving no room for people, who must move
- to other floors. Now I can't even call up and find out if anyone is
- hungry."
- Stallman can, however, still call us all up using the computer.
- Through timesharing (where many people use one computer) and networking
- (where many computers are connected together), the computer makes
- possible a new form of human communication, better than the telephone
- and the postal system put together. You can send a message by elec-
- tronic mail and get a reply within two minutes, or you can just link
- two terminals together and have a conversation.
- MIT has no monopoly on hackers. In the 1960s and 1970s hackers
- congregated around any computer center that made computer time
- vailable for "play". (Some of this play turned out to be very
- important work, but hacking is done mostly for fun, for its own sake,
- for the pure joy of it). Because universities tend to be more flexible
- than corporations in this regard, most hackers' dens arose in uni-
- versity laboratories. While some of these hackers were unauthorized
- "random people" like me, many hackers were paid employees who chose to
- stay after hours and work on their own projects -- or even continue
- their usual work -- purely for pleasure.
- The hacker community became still larger and more closely knit in
- the early 1970s, when the government funded a project to see whether it
- would be useful to let the computers at dozens of universities and
- other sites "talk" to each other. The project succeeded and produced
- the famous ARPANET, a network that now links hundreds of computers
- across the country. Through the ARPANET, researchers can share
- programs, trade research results, and send electronic mail -- both to
- individuals and to massive mailing lists. Best of all, it allowed
- once-isolated hackers to talk to each other via computer.
- The result is a nation-wide hackers' community, now one decade
- old. In some ways the community serves as a geographically dispersed
- think tank. When Rubik's Cube became popular, one hacker created an
- electronic mailing list of "Cube hackers". (Such mailing lists are
- routinely created for new topics of interest). The network buzzed, and
- continues to buzz, with exposition of some very deep mathematics in
- efforts to solve various puzzles about the Cube. What, for example, is
- the smallest number of twists required to solve the Cube? This question
- is still unanswered; but some progress has been make, and hackers
- across the country continue to discuss and to fret over its solution
- via computer.
- Hackers do more than talk, however; they hack. Although no two
- people are alike, there are certain traits that are typical of hacker.
- The cardinal qualification is that hackers like to use computers. The
- word CYCLE, as used by hackers, refers to the fundamental unit of work
- done by a computer, so we say that hackers crave cycles. The more
- cycles available, the more a hacker gets out of the computer.
- As a direct result of this craving, a hacker will frequently wake
- up at dinner time and go to bed after breakfast, or perhaps get up at
- noon and sack out a 4:00 A.M. (See the terms PHASE and NIGHT MODE for
- more information on hackers' sleeping schedules.) Hackers do this
- because the computer has its own circadian rhythms to which hackers
- willingly adjust themselves. These rhythms in turn grow out of the
- heavier demands for the computer during the day than at night. Hackers
- will therefore work late into the evening or night, when other computer
- users aren't competing for cycles. It's more fun, after all, to use the
- computer when it's responding at split-second speeds.
-
- Most such hackers are single. Hackers do get married, but the res-
- ponsibilities of family life don't always mix well with typical hacker
- life style. When I was at MIT, I would sometimes work nights for a
- month at a time. Now that I am married, I find that I can hack only in
- spurts, one or two days a week. This book, by the way, is a hack of
- sorts. The manuscript was prepared using a computer, and nearly all of
- the work was done after midnight.
- The truly dedicated hacker does little else but eat, sleep, and
- hack. Of these activities, eating is the only social activity, so
- rather than eat at home alone, a hacker will usually go out to eat with
- his hacker friends. While hackers may sleep according to different
- schedules, most arrange to be awake and at the laboratory around 6:00
- P.M., at which time one or more dinner expeditions usually head out.
- For some reason, Chinese food is particularly favored by most
- hackers. You will find several references to Chinese Szechuan and Hunan
- cuisine in this dictionary. Other spicy cuisines, such as Mexican and
- Indian, are also enjoyed by hackers, but Chinese is the definite
- favorite.
- Many shorthand expressions have developed for discussing food and
- local restaurants. At MIT one might hear:
- "Foodp?"; "Smallp?"; "T."; "T!"
- Translated, this means roughly:
- "Do you want to eat now?"
- "Maybe; what do would you think of going to Joyce Chen's Small
- Eating Place?"
- "Okay by me."
- "Then I'll join you!"
-
- When you walk up to the terminal of a time-shared computer, the
- first thing you must do is to "log in", that is, tell the computer who
- you are. To do this, you type your "computer i.d." or "login name".
- Different computers have different ideas of what a login name should
- be. Some use numbers or other codes (see the entry for PPN), some use
- your last name, some use your initials. Many computers limit login
- names to either three or six characters, so full names or last names
- can't be used in general.
- As a result everyone acquires a login name, which you need to know
- to communicate with other hacker via computer. A login name serves in
- much the same way as a CB "handle". I have friends whom I know only by
- login name; I have no idea what their real names are. Once, at a
- wedding, I ran into a good hacker friend who was also a guest there. I
- recalled his login name instantly, but was embarrassed that I couldn't
- immediately remember his real name in order to introduce him to a third
- person. It was SWAPPED OUT.
- Login names are often used as nicknames, pronounces if possible
- and spelled if necessary. My wife and I met at MIT, and she still calls
- me "Gliss", because my login name was GLS. "Guy" sounds very weird to
- her. Some hackers (including Richard Stallman) actually prefer to be
- called by their login name.
- Because of the design and use of computers depend on other
- branches of science, a hacker has to have some knowledge of ma-
- thematics, physics, electronics, and other disciplines. Hackers
- typically have many other interests as well: science fiction, music,
- and chess are particularly popular.
- The common them, however, is the love of the computer. Hackers
- discuss science fiction through computerized mailing lists. A hacker is
- less likely to listen to music than to program a computer to play
- music. A hacker who can play only a middling game of chess can write a
- program that wins chess tournaments. Such are the compensations of a
- life at the keyboard.
- Happy hacking!
-
-
-
- A Hackish Note on How to Use This Book
- By Raphael Finkel and Don Woods
-
- While hackers necessarily design and use unspeakable languages to
- control computers, they also have an unusual spoken language. Just as
- strange language had first attracted many of us to computers, we were
- struck by the queer vocabulary hackers would use to describe not only
- computer-related things but the wide world as well. Finkel decided to
- build a lexicon of the strange words and expressions that set this
- community apart, and the rest of us added to it over the years.
- A lot of our slang can be figured out from context. Don Woods once
- told a waitress, "I think we're ready to go, MODULO paying the check".
- And there's the time he asked a flight attendant to "please SNARF me a
- magazine". Neither of them batted an eye. It is the most commonly used
- jargon words -- the ones loaded with subtle connotations accumulated
- over the years -- that are the hardest to define.
- This book is arranged as a dictionary, and you may skip around
- reading individual definitions if you please. However, definitions
- occurring later in the book purposely build on earlier ones, and we
- think you will get more fun out of it if you read the book straight
- through in alphabetical order.
- We want to warn the reader that not all the expressions you will
- find here are in common use. Many are regional; some are obsolete. Some
- are used every day, and others are heard only occasionally. To give you
- an idea, here is a list of out favorite and perhaps most frequently
- used words:
-
- BAR BOGOSITY CRUFTY
- BARF BOGUS FEATURE
- BAZ BUG FLAME
- BELLS AND WHISTLES CANONICAL FLAVOR
- FLUSH LOSER PHASE OF THE MOON
- FOO MAGIC RANDOM
- FOOBAR MOBY THE REAL WORLD
- FROB MODULO SNARF
- HACK MUMBLE VANILLA
- KLUDGE PHASE WIZARD
-
- By and large, computer people have an enormous range of in-
- tellectual interests; you will see this fact reflected in the lexicon.
- While they use slang for fun, most computer people are highly literate,
- highly articulate, and sticklers for grammar. Don't expect to impress
- people by overusing the words you find here. They are the spice, not
- the bread and butter, of everyday conversation.
-
- Grokking Hacker Grammar
-
- For the most part, hackerese fits within the framework of ordinary
- English speech. There are but a few rules, however, that are unusual in
- everyday English but are very commonly used in hackerese. (These extra
- rules of grammar reflect the fact that hackers enjoy playing with
- language. Most are quite aware of when they are breaking the rules of
- standard English).
-
- Verb doubling
-
- A standard construction in English is to double a verb and use it
- as an exclamation, such as "bang, bang!" or "quack, quack!". Most of
- these are names for noises. Hackers also double verbs as a concise,
- sometimes sarcastic, comment on what the implied subject does. Also, a
- doubled verb is often used to terminate a conversation -- in the
- process, remarking on the current state of affairs or what the speaker
- intends to do next. Verbs frequently doubled include WIN, HACK, FLAME,
- BARF, and CHOMP. Typical examples of usage:
- "The disk heads just crashed. Lose, lose."
- "Mostly he just talked about his latest crock. Flame, flame."
- "I think I'll go fix that bug now. Hack, hack!"
- Standard doublings with subtle connotations are listed individually in
- the lexicon.
-
- Sound-alike Slang
-
- In the manner of cockney rhyming slang, hackers will often make
- rhymes or puns in order to convert an ordinary word of phrase into
- something more interesting. It is particularly FLAVORFUL if the phrase
- is bent so as to include some other slang word; thus, the computer
- hobbyist magazine Dr. Dobb's Journal is almost always referred to among
- hackers as Dr. Frob's Journal. Terms of this kind in fairly wide use
- include names for newspapers:
- Boston Herald American becomes Horrid (or Harried) American.
- Boston Globe becomes Boston Glob.
- San Francisco Chronicle becomes the Crocknicle.
- New York Times becomes New York Slime
- Other standard terms include:
- "For historical reasons" becomes "for hysterical raisins"
- "Margaret Hacks Hall" (a building at Stanford) becomes "Marginal
- Hacks Hall".
- "Government property -- do not duplicate" (seen on keys at MIT) is
- usually quoted as "Government duplicity -- do not propagate"
-
- The -P Convention
-
- This rule is unique, used by no one but hackers. A word or phrase
- is turned onto a yes/no question by appending the letter P, which is
- pronounced as a separate syllable when spoken. This rule is derived
- from a convention of LISP programming language, where the letter P at
- the end of a name denotes a "predicate" -- that is, a function that
- returns "true" or "false" as its result.
- For example, the question "Foodp?" (pronounced "food'pee", with
- the voice rising as for any question) means "Do you want to eat now?"
- The question "Colleen's-p?" is more specific: "Do you want to go eat at
- Colleen's Chinese cuisine (a favorite restaurant near MIT)?" "Lose-p?"
- means "Are you LOSING?" or "Is it LOSING?". And so on.
- As a special case, the question "State-of-the-world-p?" means
- "What's going on?" or "What are you doing (or about to do)?" The -P
- convention is used for this even though it isn't a yes/no question. A
- typical answer might be "The SYSTEM just CRASHED" or "I'm about to
- GRONK OUT". If the responder is feeling silly or obstinate, however, he
- will insist on interpreting it as a yes/no question after all, and
- respond with "Yes, the world has a state."
- The -P convention is often applied to new words at the spur of the
- moment. The best of these is a GOSPERISM (that is, invented by R.
- William Gosper). When we were at a Chinese restaurant, he wanted to
- know whether someone would like to share with him a two-person-sized
- bowl of soup. His inquiry was "Split-p soup?" and everyone instantly
- knew what he meant. (After all, split pea soup was not on the menu).
-
- Overgeneralisation
-
- Hackers love to take advantage of the inconsistencies of English
- by extending a general rule to cases where it doesn't apply. Children
- routinely do this when they say "teached" for "taught" or "He goed
- there" for "He went there". Hackers do this quite intentionally for
- more complicated words. One example:
- "Generous" becomes "generosity".
- "Porous" becomes "porosity".
- "Curious" becomes "curiosity".
- Therefore:
- "Mysterious" becomes "mysteriosity".
- "Obvious" becomes "obviosity".
- "Dubious" becomes "dubiosity".
- Less clearly:
- "Bogus" becomes "bogosity".
- And, perhaps:
- "Ferrous" becomes "ferocity"!
- Other examples: winnitude, disustitude, hackitude, hackification.
-
- Spoken Inarticulations
-
- Words such a "mumble", "sigh", and "groan" are spoken in places
- where their referent might more naturally be used. It has been
- suggested that this usage derives from the impossibility of re-
- presenting such noises in conversation by computer (see COM MODE); one
- gets so used to typing "Sigh!" to indicate a sigh that one soon
- develops the vocal habit of saying the word instead of actually
- sighing. Another expression sometimes heard is "complain!" (meaning not
- "You, complain!" but "I have a complaint!")
-
- How to Make Hacker Noises
-
- Many of the words in this dictionary are ordinary English words
- that have acquired new meanings. Some appear to be English words but
- are pronounced differently, and many are new words. To keep things
- simple, we have included pronunciations only in the unusual cases. If
- no pronunciation is given for a word, it should be pronounced as an
- ordinary English word.
- Also for simplicity, we do not use the complicated alphabets and
- pronunciation marks used in most dictionaries. These alphabets, such as
- the International Phonetic Alphabet, allow a very precise description
- of pronunciation but are hard to read if you're not familiar with them.
- We use the following simplified system: Syllables are separated by
- hyphens, except that an apostrophe follows an accented syllable.
- Consonants are pronounced as they usually are in English. The letter g
- is always hard, as in "got" rather than in "giant"; ch is always soft,
- as in "child" rather than "chemist". The letter s is always as in
- "pass", never a z sound as in "has"; but to prevent confusion, ss is
- sometimes used at the end of a syllable to emphasize this. Other
- consonants are also occasionally doubled for the same reason. The
- letter h always contains the leading d sound as used twice in "judge".
- Vowel sounds are represented as shown in the following table:
- a back, that
- ay bake, rain
- ah cot, father
- aw flaw, caught
- e less, men
- ee easy, ski
- i trip, hit
- ie life, sky
- ow out, how
- oh flow, sew
- oy boy, coin
- uh but, some
- u put, foot
- oo loot, through
- y yet
- yoo few
-
- A colon -- ":" -- is used for the "schwa" sound that is often
- written as an upside-down e. For example, the pronunciation of "kitten"
- would be kit':n, and of "magical" would be maj'i-k:l.
-
-
- Some Overflow in PDL
-
- Various abbreviations are used throughout these definitions. Most
- refer to computer hardware and software. For example, one of the
- favorite computer languages in our hacker community is LISP. The two
- poles of the hacker's network that compiled this dictionary are the
- artificial intelligence laboratories at Stanford and MIT, and LISP has
- always been one language of choice for artificial intelligence
- research. A particular computer, the Digital Equipment Corporation
- (DEC) PDP-6, and its successors (the PDP-10 and DECSYSTEM-20) have
- until recently been the computers of choice for running LISP. The
- consequence is that technical words from the LISP language and the
- PDP-10 computer will occasionally appear in this dictionary. The EMACS
- text editor, also referred to, was one of the first "display editors"
- to be widely distributed. It is used as a standard against which new
- text editors for personal computers are measured. We have tried to keep
- such words to a minimum throughout.
-
-
-
-
- AOS (owss [East coast], ay'ahss [West coast]) verb.
- 1. To add one to a number. Example: "Every time the computer finds
- a bad file it aoses the bad-file counter".
- 2. More generally, to increase the amount of something. Example:
- "Aos the campfire" means "Add more wood to the campfire". Silly.
- Antonym: SOS
- This word is the name of a PDP-10 instruction that takes any
- memory location in the computer and adds one to it. AOS means "Add One
- and do not Skip". Why, you may ask, does the S stand for "Do not Skip"
- rather than "Skip"? Ah, here is a beloved piece of PDP-10 folklore.
- There are eight such instructions: AOSE adds One and then Skips the
- next instruction if the result is Equal to zero; AOSG adds One and then
- Skips if the result is Greater than zero; AOSN adds One and then Skips
- if the result is Not zero; AOSA adds One and then Skips Always; and so
- on. Just plain AOS doesn't say when to skip, so it never skips. For
- similar reasons, AOJ means "Add One and do not Jump". Even more
- bizarre, SKIP means "Do not SKIP"! If you want to skip the next
- instruction, you must say "SKIPA". Likewise, JUMP means "Do not JUMP".
-
- ARG (ahrg) noun.
- An argument, in the mathematical sense only: a quantity accepted
- by a function or procedure. Example: "The sine function takes one arg,
- but the arc-tangent function can take either one or two args".
- This is an abbreviation that has become a new word in its own
- right, just as "telephone" and "pianoforte" have become "phone" and
- "piano". Arguments to mathematical functions and computational
- procedures are discussed so frequently by hackers that this ab-
- breviation saves a lot of time.
-
- AUTOMAGICALLY (aw'toh-maj'i-k:l-lee, aw'toh-maj'i-klee) adverb.
- Automatically, but in a way which, for some reason (typically
- because it is too complicated, or too ugly, or perhaps even too
- trivial), the speaker doesn't feel like explaining. Example: "File that
- have a name ending in 'TMP' are automagically deleted when you log
- out". (This means "When you say good-bye to the computer, files with
- names ending in 'TMP' are deleted. How this happens is complicated and
- I don't want to get into it just now. Trust me, it works.")
- See MAGIC
-
- BAGBITER (bag'bie-t:r) noun.
- 1. Something, such as a program or a computer, that fails to work
- or that works in a remarkably clumsy manner. Example: "This text editor
- won't let me make a file with a line longer than eighty characters!
- What a bagbiter!"
- 2. A person who has caused you some trouble, inadvertently or
- otherwise, typically by failing to program the computer properly.
- Synonyms: LOSER, CRETIN, CHOMPER.
- BAGBITING adjective. Having the quality of a bagbiter. "This
- bagbiting system won't let me compute the greatest common divisor of
- two negative numbers."
- Synonyms: LOSING, CRETINOUS, BLETCHEROUS, BARFUCIOUS, CHOMPING.
- BITE THE BAG verb. To fail in some manner. Example: "The computer
- keeps CRASHING every five minutes." "Yes, the disk controller is really
- biting the bag." The original meaning of this term was almost un-
- doubtedly obscene, probably referring to the scrotum. In its current
- usage it has become almost completely sanitized.
-
- BANG noun.
- The character "!" (exclamation point). Synonyms: EXCL, SHRIEK. See
- CHARACTERS. This term is more popular at CMU than at MIT or Stanford.
- It is used to describe the character "!" itself rather than to replace
- it. For example, one would not say, "Congratulations bang." On the
- other hand, if I wanted you to write "FOO!" -- those exact four
- characters, on a piece of paper -- I would tell you, "Write eff, oh,
- oh, bang."
-
- BAR
- The second metasyntactic variable, after FOO. If a hacker needs to
- invent exactly two names for things, he almost always picks the names
- "foo" and "bar". Example: "Suppose we have two functions, say, foo and
- bar. Now suppose foo calls bar..."
- See FOO, FOOBAR.
-
- BARF
- 1. interjection. Term of disgust or frustration. See BLETCH.
- 2. verb. To say "Barf!" or a similar term of disgust (because one
- is annoyed or offended).
- 3. To fail to work because of unacceptable input; sometimes, to
- print an error message. Examples: "The division operation barfs if you
- try to divide by zero." (Division by zero fails in some unspecified
- spectacular way) "The text editor barfs if you try to read in a new
- file before writing out the old one."
- BARFULOUS, BARFUCIOUS adjective. So ugly or offensive as to make
- someone barf.
- These meanings are derived form the common slang meaning of
- "barf", namely, "to vomit".
-
- BAZ (baz)
- 1. The third metasyntactic variable, after FOO and BAR.
- 2. interjection. Term of mild annoyance. In this usage the pro-
- nunciation is often drawn out for two or three seconds, sometimes
- sounding like the bleating of a sheep: "Baaaaaaaaaaz!"
-
- BELLS AND WHISTLES noun.
- Unnecessary (but often useful, convenient, or amusing) features of
- a program or other object. Example: "Now that we've got the basic
- program working, let's go back and add some bells and whistles."
- On an automobile, things like power windows and quadrophonic sound
- would be bells and whistles.
- This term is widely used, and not just in the hacker community. To
- understand it, think of a plain box that does a job well but is awfully
- boring to look at. Who will buy it? Now you add a few bells and
- whistles. They don't do anything useful, but they make the product more
- interesting. Nobody seems to know what distinguishes a bell from a
- whistle.
-
- BIGNUM (big'num) noun.
- 1. A multiple-precision computer representation for very large
- integer.
- 2. More generally, any very large number. "Have you ever looked at
- the United States Budget? There's bignums for you!"
- 3. When playing backgammon, large numbers on the dice, especially
- a roll of double fives or double sixes.
- See EL CAMINO BIGNUM.
- Most computer languages provide a kind of data called "integers",
- but such computer integers are usually very limited in size; usually
- they must be smaller than 215 (32768) or 231 (2147483648). If you want
- to work with numbers larger than that, you have to use floating-point
- numbers, which are usually only accurate to six or seven decimal
- places.
- Computer languages that provide bignums can perform exact
- calculation on very large numbers such as 21000 or 1000! (the factorial
- of 1000, which is 1000 times 999 times 998 times ... times 2 times 1)
- exactly. For example, this value for 1000! was computed by the MACLISP
- system using bignums:
-
- 40238726007709377354370243392300398571937486421071
- 46325437999104299385123986290205920442084869694048
- 00479988610197196058631666872994808558901323829669
- 94459099742450408707375991882362772718873251977950
- 59509952761208749754624970436014182780946464962910
- 56393887437886487337119181045825783647849977012476
- 63288983595573543251318532395846307555740911426241
- 74743493475534286465766116677973966688202912073791
- 43853719588249808126867838374559731746136085379534
- 52422158659320192809087829730843139284440328123155
- 86110369768013573042161687476096758713483120254785
- 89320767169132448426236131412508780208000261683151
- 02734182797770478463586817016436502415369139828126
- 48102130927612448963599287051149649754199093422215
- 66832572080821333186116811553615836546984046708975
- 60290095053761647584772842188967964624494516076535
- 34081989013854424879849599533191017233555566021394
- 50399736280750137837615307127761926849034352625200
- 01588853514733161170210396817592151090778801939317
- 81141945452572238655414610628921879602238389714760
- 88506276862967146674697562911234082439208160153780
- 88989396451826324367161676217916890977991190375403
- 12746222899880051954444142820121873617459926429565
- 81746628302955570299024324153181617210465832036786
- 90611726015878352075151628422554026517048330422614
- 39742869330616908979684825901254583271682264580665
- 26769958652682272807075781391858178889652208164348
- 34482599326604336766017699961283186078838615027946
- 59551311565520360939881806121385586003014356945272
- 24206344631797460594682573103790084024432438465657
- 24501440282188525247093519062092902313649327349756
- 55139587205596542287497740114133469627154228458623
- 77387538230483865688976461927383814900140767310446
- 64025989949022222176590433990188601856652648506179
- 97023561938970178600408118897299183110211712298459
- 01641921068884387121855646124960798722908519296819
- 37238864261483965738229112312502418664935314397013
- 74285319266498753372189406942814341185201580141233
- 44828015051399694290153483077644569099073152433278
- 28826986460278986432113908350621709500259738986355
- 42771967428222487575867657523442202075736305694988
- 25087968928162753848863396909959826280956121450994
- 87170124451646126037902930912088908694202851064018
- 21543994571568059418727489980942547421735824010636
- 77404595741785160829230135358081840096996372524230
- 56085590370062427124341690900415369010593398383577
- 79394109700277534720000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000
- 00000000000000000
-
- The MACLISP language was not the first computer system to
- calculate very large integers, but it was MACLISP that provided the
- name "bignum".
-
- BIT noun.
- 1. The unit of information: the amount of information obtained by
- asking a yes-no question.
- 2. A computational quantity that can take on one of two values,
- such as true and false, or 0 and 1.
- 3. A mental flag: a reminder that something should be done
- eventually. Example: "I have a bit set for you." (I haven't seen you
- for a while, and I'm supposed to tell or ask you something).
- A bit is said to be "set" if its value is true or 1, and "reset" or
- "clear" if its value is false or 0. One speaks of setting and clearing
- bits. To TOGGLE a bit is to change it, either from 0 to 1 or from 1 to
- 0. BITS. Information. Example: "I need some bits about file formats."
- ("I need to know about file formats").
- THE SOURCE OF ALL GOOD BITS noun. A person from whom (or a place
- from which) information may be obtained. If you need to know about a
- program, a WIZARD might be the source of all good bits. The title is
- often applied to a particularly competent secretary.
-
- BITBLT (bit'blit)
- 1. verb. To copy a large array of bits from on part of a com-
- puter's memory to another part, particularly when the memory is being
- used to determine what is shown on a display screen.
- 2. More generally, to perform some operation (such as TOGGLING) on
- a large array of bits while moving them.
- 3. noun. The operation of bitblting.
- See BLT.
-
- BIT BUCKET noun.
- 1. The mythical receptacle used to catch bits when they fall off
- the end of a register during a shift instruction.
- 2. More generally, the place where information goes when it is
- lost or destroyed. Example: "Oh, no! All my files just went into the
- bit bucket!"
- 3. The physical device used to implement output to the NULL
- DEVICE.
- This term is used purely in jest. It's based on the fanciful
- notion that bits are objects that are not destroyed, only misplaced.
-
- BIT DECAY noun.
- A fanciful theory to explain SOFTWARE ROT, the phenomenon that
- unused programs or features will eventually stop working even if
- "nothing has changed". The theory explains that bits decay as if they
- were radioactive. As time passes, the contents of a file or the code in
- a program will become increasingly garbled.
- There actually are physical processes that produce these effects.
- Alpha particles, such as those found in cosmic rays, can change the
- contents of a computer memory unpredictably. Fortunately, the pro-
- bability of this can be kept fairly low. In any case, when you can't
- figure out why something stopped working, it is often convenient to
- blame it on bit decay.
-
- BLETCH (bletch) interjection.
- Term of disgust.
- BLETCHEROUS adjective. Disgusting in design of function, aes-
- thetically unappealing. (This word is seldom used of people.) Example:
- "This keyboard is bletcherous!" (Perhaps the keys don't work very well
- or are poorly arranged.) Slightly comic.
- "Bletcherous" applies to the aesthetics of the thing so described;
- similarly for CRETINOUS. By contrast, something that is LOSING or
- BAGBITING may be failing to meet objective criteria.
- See BOGUS and RANDOM, which have richer and wider shades of
- meaning than any of the others.
-
- BLT (blit, belt) verb.
- To copy or transfer a large contiguous package of information from
- one place to another. "The storage allocator picks through the table
- and copies the good parts up into high memory, and at the end, blt's it
- all back down again."
- THE BIG BLT noun. A massive memory-shuffling operation frequently
- performed by some time-sharing systems on the PDP-10 computer.
- This comes from the name of a PDP-10 instruction that copies a block of
- memory form one place to another; the name "BLT" stands for "Block
- Transfer". Nowadays, BLT almost always means "Branch if Less Than
- zero", so the slang meanings above are rather like antiques or
- dinosaurs.
-
- BOGUS (boh'gus) adjective.
- 1. Nonfunctional. Example: "Your fix for that BUG was bogus".
- 2. Useless. Example: "ATSIGN is a bogus program".
- 3. False. Example: "Your arguments are bogus".
- 4. Incorrect. Example: "That algorithm is bogus".
- 5. Unbelievable. Example: "You claim to have solved the halting
- problem for Turing Machines? That's totally bogus".
- 6. Silly. Example: "Stop writing those bogus SAGAS". Astrology is
- bogus. So is a bolt that is obviously about to break. So is someone who
- makes blatantly false claims of having solved a scientific problem.
- BOGOSITY (boh'gahss':t-ee) noun. The quality of being bogus; also,
- an instance or example thereof.
- BOGON (boh'gahn) noun.
- 1. A person who is bogus or who says bogus things.
- 2. More rarely, a mythical subatomic particle that bears the unit
- charge of bogosity. (A convention in particle physics is to name new
- subatomic particles by using the Greek suffix -on, because Greek words
- originally used to name such particles. For example hadrons are very
- massive particles that were named from the Greek word hadros, meaning
- "heavy". More recently, however, physicist have taken to attaching this
- suffix to words from other languages. For example, the particles that
- help to hold quarks together are called "gluons", from the English word
- glue. Hackers have used this convention in fun, on an ad hoc basis; but
- two of them, "bogon" and COMPUTRON, are used fairly regularly).
- BOGOMETER (boh-gahm':t-:r) noun. A mythical instrument used to
- measure bogosity, much as a thermometer measures temperature. Example:
- In a seminar, when a speaker makes an outrageous claim, a listener
- might raise his hand and say, "My bogometer just triggered".
- Someone who is a bogon in the first sense probably radiates a lot
- of bogons in the second sense. This provides a (pseudo) scientific
- explanation for how a bogometer works: it's like a Geiger counter that
- detects bogons.
- The agreed-upon unit of bogosity is the microLenat (uL) or one-
- -millionth of a Lenat, in honor of computer scientist Doug Lenat. The
- consensus is that this is the largest unit practical for everyday use.
- BOGOTIFY (boh-gaht':f-ie) verb. To make or become bogus. A program
- that has been changed so many times as to become completely dis-
- organized has become bogotified. If you tighten a nut too hard and
- strip the threads on the bolt, the bolt has become bogotified and you'd
- better not use it any more.
- BOGUE OUT (bohg owt) verb. To become bogus, suddenly and un-
- expectedly. Example: "His talk was relatively sane, but then someone
- asked him a tricky question; he bogued out and did nothing but FLAME
- after that".
- AUTOBOGOTIPHOBIA (aw'to-boh-gaht':-foh'bee-uh) noun. The fear of
- becoming bogotified.
-
- "Bogus" has many, but not all, of the meanings of RANDOM. "Random"
- tends to connote pointlessness or a lack of direction, while "bogus"
- tends to connote deception or misdirection. Both, however, may connote
- confusion.
- "Bogus" was originally used in the hacker sense at Princeton in
- the late 1960s; not just in the computer science department but all
- over the campus. It came to Yale and (we assume) elsewhere through the
- efforts of migratory Princeton alumni, Michael Shamos in particular,
- now a faculty member at CMU. The hacker usage of this word has since
- spread to other places.
-
- BOUNCE verb.
- To play volleyball. This term is, or was, used primarily at
- Stanford. At on time there was a volleyball court next to the computer
- laboratory. From 5:00 P.M. to 7:00 P.M. was the scheduled maintenance
- time for the computer, so every afternoon at 5:00 the computer would
- become unavailable. And over the intercom a voice would cry, "Bounce,
- bounce!" meaning "Everyone come out and play volleyball!"
-
- BRAIN-DAMAGED adjective.
- Obviously wrong; extremely poorly designed; CRETINOUS; DEMENTED.
- There is a connotation that the person responsible must have
- suffered brain damage, because he should have known better. Calling
- something brain-damaged is really extreme. The word implies that the
- thing is completely unusable, and that its failure to work is due to
- poor design, not accident.
-
- BREAK verb.
- 1. To become BROKEN (in any sense).
- 2. To cause to be broken (in any sense). "Your latest patch to the
- editor broke the paragraph commands".
- 3. Of a program, to halt or pause temporarily so that it may be
- examined for debugging purposes. The place where the program stops is
- called a "breakpoint". See CONTROL-B.
- BROKEN adjective.
- 1. Of programs, not working properly. "The FORTRAN compiler is
- broken".
- 2. Behaving strangely -- especially (of people), exhibiting
- extreme depression.
-
- BROKET (broh'k:t, broh'ket) noun.
- Either of the characters "<" and ">". The first is called a "left
- broket", and the second a "right broket".
- This word originated as a contraction of the phrase "broken
- bracket", that is, a bracket that is bent in the middle.
-
- BUCKY BITS noun.
- Bits corresponding to "control" and "meta" keys on a keyboard.
- See DOUBLE BUCKY and QUADRUPLE BUCKY.
- This phrase requires a long explanation. Most computer keyboards
- are arranged more or less like a typewriter keyboard, but have extra
- keys. One of them, usually marked "control" or "CTRL", is like a shift
- key, but instead of changing letters from lower case to upper case, it
- changes them into so-called control characters. The character sent when
- you hold down the control key and type F is called simply "control-F".
- Such characters are usually used as commands to the computer, es-
- pecially to a text editor. In one well-known text editor, EMACS (which
- was written at MIT), control-F moves forward one character, control-N
- moves to the next line, control-P moves to the previous line, control-D
- deletes a character, and so on.
- Control characters are so useful that sometimes special keyboards
- are built that have even more shift keys. One of the first of these was
- used at Stanford. It had the usual shift and control keys, and a third
- key called "meta", as well as lots of unusual characters such as Greek
- letter. So, one can type such characters as control-F, meta-N, and
- control-meta-B.
- Now, when you type a character on a Stanford keyboard, the
- following information is sent to the computer: a code indicating the
- basic character, plus one BIT for each shifting key to indicate whether
- that shifting key was pressed along with the basic character key.
- Programs usually treat the regular shift key as part of the basic
- character, indicating whether you want lower case or upper case (or
- whether you want "3" or "#", and so on). The other bits (control and
- meta) are called the bucky bits.
-
- Why "bucky"? Rumor has it that the idea for the extra bits for
- characters came from computer scientist Niklaus Wirth (who invented the
- computer languages PASCAL and MODULA-2) when he was at Stanford, and
- that his nickname was "Bucky".
- Inspired by the Stanford keyboard, the MIT SPACE CADET KEYBOARD
- has seven shifting keys: four "bucky bit" keys -- "control", "meta",
- "hyper", and "super" -- and three like the regular shift key, called
- "shift", "top", and "front". Many keys have three symbols on them: a
- letter and a symbol on the top, and a Greek letter on the front. For
- example, the L key has an "L" and a two-way arrow on the top, and a
- Greek letter lambda on the front. If you press this key with the right
- hand while playing an appropriate :chord: with the left hand on the
- shift keys, you can get the following results:
-
- L lower-case "l"
- shift-L upper-case "L"
- front-L Greek lower-case lambda
- front-shift-L Greek upper-case lambda
- top-L two-way arrow
- (front and shift are ignored)
-
- And of course each of these may also be typed with any combination
- of the control, meta, hyper, and super keys. On this keyboard you can
- type over 8000 different character! This allows the user to type very
- complicated mathematical text, and also to have thousands of sin-
- gle-character commands at his disposal. Many hackers are actually
- willing to memorize the command meanings of that many characters if it
- will reduce typing time. Other hackers, however, think having that many
- bucky bits is overkill, and object that such a keyboard can require
- three or four hands to operate.
-
- BUG noun.
- A mistake or problem (possibly simple, possibly very deep); an
- unwanted and unintended property, characteristic, or behavior.
- Examples: "There's a bug in the editor. It writes things out
- backward." "The system CRASHED because of a hardware bug". (That is,
- the computer suddenly stopped because of an equipment failure) "Fred is
- a WINNER, but he has a few bugs" (Fred is a good guy, but he has a few
- personality problems).
- Antonym: FEATURE.
- This is usually thought of as applying to a program but can be
- applied to computers, people, and other things.
- Some say this term came from telephone company usage: "Bugs in a
- telephone cable" were blamed for noisy lines. However, computer
- scientist Grace Hopper has repeatedly been heard to claim that the use
- of the term in computer science comes from a story concerning actual
- bugs found wedged in an early malfunctioning computer. In any case, in
- hacker's slang the word almost never refers to insects. Here is a
- plausible conversation that never actually happened: "This ant farm has
- a bug." "What do you mean? There aren't even any ants in it." "That's
- the bug."
-
- BUM
- 1. verb. To improve something by removing or rearranging its parts
- -- such as wires in a computer or instructions from a program -- while
- preserving its function. More generally, to make highly efficient,
- either in time or space. The connotation is that this is done at the
- expense of clarity. Examples: "I managed to bum three more instructions
- out of that code." "I bummed the program not to write the file if it
- would be empty." "I bummed the inner loop of the program down to seven
- microseconds."
- 2. noun. A small change to an algorithm, program, or object to
- make it more efficient. "This hardware bum makes the jump instruction
- faster."
-
- BUZZ verb.
- Of a program, to run with no indication of progress and perhaps
- without guarantee of ever finishing. The state of a buzzing program
- resembles CATATONIA, but you never get out of catatonia, while a
- buzzing loop may eventually end of its own accord. Example: "The
- program buzzes for about ten seconds trying to sort all the names into
- order".
-
- CANONICAL (ki-nahn'i-kil) adjective.
- Usual; standard; ordinary. Example: "What is the canonical way to
- rejustify a paragraph in EMACS?"
- This word has a somewhat more technical meaning in mathematics.
- For example, on sometimes speaks of a formula as being in canonical
- form. Two formulas such as 9+3x^2+x and 3x^2+x+9 are said to be
- equivalent because they mean the same thing, but the second one is in
- canonical form because it is written in the usual way, with the highest
- power of x first.
-
- Usually there are fixed rules you can use to decide whether
- something is in canonical form. The slang meaning is a relaxation of
- the technical meaning.
- A true story: One Bob Sjoberg, new at MIT, expressed some
- annoyance at the use of hacker's slang. Over his loud objections, we
- made a point of using the slang as much as possible in his presence,
- and eventually it began to sink in, Finally, in one conversation he
- used the word "canonical" in slanglike fashion without thinking.
-
- Steele: Aha! We've finally got him talking jargon [slang] too!
- Stallman: (who wasn't quite paying attention) What did he say?
- Steele: Bob just used "canonical" in the canonical way.
-
- CATATONIA (kat':-toh'ne-uh) noun.
- A condition of suspended animation in which something is so WEDGED
- that it makes no response. For example, if you are typing on your
- terminal and suddenly the computer doesn't even make the letter appear
- on the screen as you type -- let alone do what you're asking it to do
- -- then the computer is suffering from catatonia (probably because it
- has CRASHED).
- CATATONIC (kat':-tahn'ik) adjective. In a state of catatonia.
- Synonym: WEDGED.
-
- CDR (ku'd:r) verb.
- To remove the first item from a list of things.
- CDR DOWN verb. To go down a list of things one by one. Example: "Shall
- we cdr down the agenda?" Silly.
- This term is derived from a function of the LISP language that removes
- an item from a list.
-
- CHARACTERS noun.
- Those things that you type on a keyboard or that appear on your
- terminal. (Sometimes you can type characters on your keyboard that
- cannot be printed on the screen, and vice versa. For example, on most
- keyboards you can type "control characters" that can't be written down
- like the characters "A" and "%" can; they are mostly used as special
- commands. Conversely, some terminals can display almost any picture a
- program can draw. A program can then draw Greek letters or any other
- funny symbol, even if they aren't on the keyboard.)
- Computers tend to seem very unforgiving: a program can fail to
- work if you get even one character in it wrong. (Folklore has it that a
- NASA mission to Venus failed because, in one place in one program,
- there was a period where there should have been a comma). Hackers
- therefore need to be very precise when talking about characters, and
- have developed a considerable amount of verbal shorthand for talking
- about characters:
- ! EXCL, exclam, BANG, SHRIEK, WOW.
- # Hash mark, MESH, SPLAT, CRUNCH, pig-pen.
- $ Dollar.
- & Ampersand (This name is already so silly that no
- slang term is needed!)
- ' Single quote, forward quote.
- ( and ) Parens (separately called just OPEN and CLOSE).
- * Star, SPLAT. (In other computer communities, the
- name "gear" is used, because it looks like a little
- cogwheel).
- . Period, dot, point. (Which of these is used depends
- on culture and context. The word "point" is used
- more at MIT that "dot" is. CMU uses "dot"
- almost exclusively).
- / Slash, forward slash.
- ; SEMI.
- < Less than, left ANGLE BRACKET, open angle bracket,
- left BROKET.
- = Equals.
- > Greater than, right ANGLE BRACKET, close angle
- bracket, right BROKET.
- ? QUES, query.
- @ At-sign, at.
- \ Backslash.
- ^ Caret. (The name "uparrow" is also used; this dates
- from the days of old ASCII, when the code now
- assigned to circumflex was used for an upward-
- -pointing arrow).
- _ Backarrow. (This dates from the days of old ASCII,
- when the code now assigned to an underscore was
- used for a leftward-pointing arrow).
- ` Backquote.
- { and } Curly braces, curly brackets, SQUIGGLE BRACKETS.
- | Vertical bar.
- ~ TWIDDLE, SQUIGGLE, SQIGGLE.
-
- The INTERCAL programming language, consistent with its general
- policy of never doing anything the way some other programming language
- does it, has odd names especially invented for many characters. Most of
- these names are generally not used except in the context of INTERCAL.
-
- . Spot.
- : Two-spot.
- , Tail.
- # Mesh.
- = Half-mesh.
- ' Spark.
- ` Backspark.
- " Rabbit ears.
- ! WOW.
- ? What.
- | Spike.
- - Worm.
- < Angle. (The two-character arrow "<-" is called
- "angleworm").
- > Right angle.
- ( Wax.
- ) Wane.
- [ U turn.
- ] U turn back.
- { Embrace.
- } Bracelet.
- * SPLAT.
- & Ampersand (INTERCAL couldn't make this any sillier,
- either).
- _ Flatworm.
- + Intersection.
- / Slat.
- \ Backslat.
- ^ Shark (or simply shark fin).
- @ Whirlpool.
- % Double-oh-seven.
-
- CHINE NUAL (sheen'yu-:l) noun.
- The reference manual for the Lisp Machine, a computer designed at
- MIT especially for running the LISP language. It is called this because
- the title, LISP MACHINE MANUAL, appears in big block letters -- wrapped
- around the cover in such a way that you have to open the cover out flat
- to see the whole thing. If you look at just the front cover, you see
- only part of the title, and it reads "LISP CHINE NUAL"
-
- CHOMP (chahmp) verb.
- To LOSE; to chew on something of which more was bitten off than
- one can.
- Synonyms: LOSE, BITE THE BAG (see BAGBITER).
- A hand gesture commonly accompanies the use of the word "chomp".
- The four fingers are held together as if in a mitten or hand puppet,
- and the fingers and thumb are opened and closed rapidly to illustrate a
- biting action. The hand may be pointed at the object of complaint, and
- for the real emphasis you can use both hands at once. For example, to
- do this to a person is equivalent to saying, "You chomper!". If you
- point the gesture at yourself, it is a humble but humorous admission of
- some failure. I would do this if someone told me that a program I had
- written failed in some surprising way and I felt stupid for not having
- anticipated it.
- CHOMPER (chahmp':r) noun. Someone or something that is chomping; a
- loser.
- Synonyms: LOSER, BAGBITER.
-
- CLOSE (klohz)
- 1. adjective. Of a delimiting CHARACTER, used at the righthand end
- of a grouping. Used in such terms as "close parenthesis" and "close
- bracket".
- 2. noun. Abbreviation for "close (or right) parenthesis", used
- when necessary to eliminate oral ambiguity. See OPEN and CHARACTERS.
- 3. verb. To terminate one's interaction with a file of in-
- formation. See OPEN.
-
- COKEBOTTLE (kohk'baht-:l) noun.
- Any very unusual character, particularly one that isn't on your
- keyboard so you can't type it. A program written at Stanford, for
- example, is likely to have a lot of "control-meta-cokebottle" commands,
- that is, commands that you can only type on a Stanford keyboard --
- because you need the "control" and "meta" keys (see BUCKY BITS) -- and
- also unusual characters such as the downward-pointing arrow. The last
- is a "cokebottle" unless you happen to have a Stanford keyboard. (This
- usage probably arose because of the unusual and distinctive shape of
- Coca-Cola bottles. No keyboard I know of actually has a cokebottle
- character on it, so any character you can't type might as well be a
- Coke bottle for all the good it does you).
-
- COM MODE, COMM MODE (kahm'mohd) noun.
- A situation in which two or more terminals are linked together by
- the computer so that whatever is typed on any of them appears on all of
- them. Ideally this is accomplished in such a way that what you type
- appears on the other terminals but is not otherwise interpreted by the
- computer (so what you type doesn't foul up your programs). The word com
- is short for communicate.
- Com mode is used for conversation: you can talk to other hackers
- without leaving your terminal. It combines the immediacy of talking
- with all the precision (and verbosity) that written language entail. It
- is difficult to communicate inflections, though conventions have arisen
- for some of these. For example, to emphasize a word (as if printed in
- italics), one may type an asterisk before and after the word. Typing in
- all-capital letters is equivalent to raising one's voice).
- Neophytes, when in com mode, seem to think they must produce let-
- ter-perfect prose because they are typing rather than speaking. This is
- not the best approach. It can be very frustrating to wait while your
- partner pauses to think of a word, or repeatedly makes the same
- spelling error and backs up to fix it. It is usually best just to leave
- typographical errors behind and plunge forward, unless severe confusion
- may result. In that case, it is often fastest just to type xxx and
- start over from before the mistake.
- There is a special set of slang terms used only in com mode, which
- are not used vocally. These are used to save typing or to communicate
- inflection.
-
- BCNU Be seeing you (that is, good-bye).
- BTW By the way...
- BYE? Are you ready to unlink? (This is the standard way
- to end a com mode conversation: the other person
- types BYE to confirm, or else continues the
- conversation).
- CUL See you later.
- FOO? A greeting, also meaning R U THERE? Often used in
- the case of unexpected links, meaning also "Sorry
- if I butted in" (linker) or "What's up?" (linkee).
- FYI For your information...
- GA Go ahead (used when two people have tried to type
- simultaneously; this cedes the right to type to the
- other.
- HELLOP A greeting, also meaning R U THERE? (This is an
- instance of the -P convention).
- NIL No. (See the main entry for NIL).
- OBTW Oh, by the way...
- R U THERE?
- Are you there?
- SEC Wait a second (sometimes written SEC...). For
- example, if you are interrupted by a telephone
- call, or need to think about something before
- replying, you might type this. You might also type
- an additional dot every few seconds to indicate
- that you are still there but busy. Also, if you
- need to use a program for a moment (possibly
- because someone asked you a question), you might
- type SEC..., unlink your terminal, use your
- program, and the link back into the com mode.
- T Yes (See the main entry for T).
- TNX Thanks.
- TNX 1.0E6
- Thanks a million. (This "1.0E6" is a standard way
- to write one million in many computer languages).
- Silly.
- [double crlf]
- When the typing party has finished, he types two
- CRLF's (that is, presses the RETURN key twice) to
- signal that he is done. This leaves a blank line
- between individual "speeches" in the conversation,
- making it easier to reread the preceding text, and
- indicates that the other person may type.
- [name]: When three or more terminals are linked, each
- speech is preceded by the typist's login name
- ("computer id") and a colon (or a hyphen) to
- indicate who is typing. You need to do this because
- you can't tell who is who by tone of voice! The
- login name often is shortened to a unique prefix
- (possibly a single letter) during a very long
- conversation.
- /\/\/\ The equivalent of a giggle.
-
- Synonym: TALK MODE. (The term "com mode" is used more at MIT, and
- "talk mode" at Stanford.
-
-
- COMPUTRON (kahm'pyoo-trahn'), COMPUTON (kahm'pyoo-tahn') noun.
- A mythical subatomic particle that bears the unit quantity of
- computation or information, in much the same way that an electron bears
- one unit of electric charge. If the computer is too slow, it's because
- you're short of computrons. See BOGON and CYCLE.
- An elaborate pseudo-scientific theory of computrons has been
- worked out as a jest by MIT hacker Stavros Macrakis. (He called the
- particles "mensons", but that name is no longer used). It is a
- well-known fact of physics that as you heat something, the molecules
- get jiggled around and their positions become more random. The hotter
- it gets, the less predictable are the positions of the molecules.
- Eventually the molecules just spill all over each other, and the thing
- melts. Now, he argues, it obviously melts because each molecule has
- lost the information about where it is supposed to be: in other words,
- it has lost computrons. This explains why computers get so hot and
- require air conditioning: they use up computrons. Conversely, you
- should be able to refrigerate something simply by placing it in the
- path of a computron beam.
- CMU hacker Joe Newcomer has also observed that this theory
- explains why a computer works when it's tested in the factory but not
- when you've put it in the computer room with all the other computers.
- They're tested singly at the factory, and so there are plenty of
- computrons available there, but in the computer room all the computers
- compete for the computrons in a limited space and some of them come up
- short.
-
- CONNECTOR CONSPIRACY noun.
- The (perhaps only mythical) tendency of manufacturers (or, by ex-
- tension, programmers or purveyors of anything) to come up with new
- products that don't fit together with the old stuff, thereby making you
- buy either all new stuff or expensive interface devices.
- This term probably came into prominence with the appearance of the
- KL10 model of the PDP-10, none of whose connectors seemed to match
- anything else.
-
- CONS (kahnz) verb.
- To add a new element to a list, usually to the top rather than at
- the bottom. CONS UP verb. To synthesize from smaller pieces; more ge-
- nerally, to create or invent. Examples: "I'm trying to cons up a list
- of volleyball players". "Let's cons up an example".
- This term comes from the LISP programming language, which has a
- function called CONS that adds a data item to the front of a list.
-
- CONTROL
- The name of one of the several BUCKY BITS. Used as a prefix to
- another character, it indicates that the "control" key on your keyboard
- should be pressed as the other character is typed.
-
- CONTROL-B (k:n-trohl' bee') interjection.
- May I interrupt? or, Beginning of digression. Synonym: PUSH.
- Antonym: CONTROL-P.
-
- CONTROL-G (k:n-trohl' jee') interjection.
- Stop! Cease! Change the subject! Stop that FLAMING!
-
- CONTROL-P (k:n-trohl' pee') interjection.
- End of interruption or digression. If two hackers are sitting in
- an office talking, a third one might stick his head in the door and ask
- "Control-B?". This is a polite, albeit silly, way of asking "May I
- interrupt?" When the side conversation is done, the third hacker might
- say "Thanks a lot, Control-P".
- Control characters are used in various ways to control the actions
- of computer programs. Different computer systems have different con-
- ventions about how control characters are used, and hackers will use
- the local computer convention when speaking. The definitions given
- above correspond to their meanings as used in the MACLISP language and
- in DDT at MIT. At other places, "Control-C" replaces "Control-G", for
- example.
-
- CRASH
- 1. noun. A sudden, usually drastic failure. Most often said of the
- SYSTEM, sometimes of magnetic disk drives. Example: "Three LUSERS lost
- their files in last night's disk crash". The term "system crash"
- usually, though not always, implies that the operating system or other
- software was at fault. Disk crashes come in two varieties: either the
- disks are physically unharmed but some information stored on them is
- lost, or else the disks are physically damaged -- in which case the
- entire information content of the disk is usually lost. The second kind
- usually occurs when the magnetic read/write heads hit the surfaces of
- the disks and scrape off the oxide. This kind of disk crash is called a
- "head crash".
- 2. verb. To fail suddenly. Example: "Has the system just
- crashed?".
- 3. verb. To cause to fail. Example: "There is a BUG in the tape
- controller; if you try to use the tape drive, you will crash the
- system".
- 4. verb. Of people, to go to sleep -- particularly after a long
- period of work. See GRONK OUT.
-
- CREEPING FEATURISM (kreep'eeng feetch':r-iz':m) noun.
- The tendency for anything complicated to become even more
- complicated because people keep saying, "Gee, it would be even better
- if it had this feature too". (See FEATURE)
- The result is usually a patchwork, because it grew one ad hoc step
- at a time, rather than being planned. Planning is a lot of work, but
- it's easy to add just one extra little feature to help someone... And
- then another... and another... Usually this term is used to describe
- computer programs, but it could also be applied to the federal
- government, the IRS 1040 form, and new cars.
-
- CRETIN (kreet-:n) noun.
- A congenital LOSER; an obnoxious person; someone who can't do
- anything right. CRETINOUS (kree'tin-uhss, kreet':n-uhss) adjective.
- Wrong; nonfunctional; very poorly designed (also used pejoratively of
- people).
- Synonyms: BLETCHEROUS, BAGBITING, LOSING, BRAIN-DAMAGED.
-
- CRLF (k:r'lif, crul':f)
- 1. noun. A carriage return (CR) followed by a line feed (LF). More
- loosely, whatever it takes to get you from the end of one line of text
- to the beginning of the next line.
- 2. verb. To output a crlf; to end a line of text or to begin a new
- line of text.
- Synonym: TERPRI.
-
- CROCK noun.
- 1. Something, especially a program, that works but does so in an
- unbelievable ugly or awkward manner; more specifically, something that
- works acceptably but which is quite prone to failure if disturbed in
- the least.
- 2. A tightly woven, almost completely unmodifiable structure;
- something very complicated that ought to be simple.
- Computer programs seldom stay the same forever. They tend to
- evolve, and are constantly changed as BUGS are fixed or new FEATURES
- added. Crocks make this difficult because, although they work, they are
- very difficult to make small changes to.
- Synonym: KLUDGE. CROCKISH, CROCKY adjective. Having the cha-
- racteristics of a crock. See BLETCHEROUS.
- CROCKITUDE (krahk':-tood) noun. Crockness, crockhood.
-
- CRUFT (kruhft)
- 1. noun. An unpleasant substance. The dust that gathers under your
- bed is cruft.
- 2. noun. The results of shoddy construction.
- CRUFT TOGETHER verb. To make something quickly and haphazardly to
- get it working quickly, without regard to craftsmanship. Example:
- "There isn't any program now to reverse all the lines of a file, but I
- can probably cruft one together in about ten minutes".
- The origin of this word is unknown.
-
- CRUFTY (kruhft'ee)
- 1. adjective. Unpleasant, especially to the touch; yucky, like
- spilled coffee smeared with peanut butter and catsup.
- 2. adjective. Poorly built, possibly overly complex. "This is
- standard old crufty DEC software".
- 3. adjective. Generally unpleasant.
- 4. noun (also spelled "cruftie"). A small crufty object, or (in a
- program) a small data structure, especially one that doesn't fit well
- into the scheme of things. Every desk seems to have one drawer that
- accumulates crufties. Example: "A LISP property list is a good place to
- store crufties". (In the LISP language, odd data structures can be
- stored in a catchall data structure called a property list).
- CRUFTSMANSHIP noun. The antithesis of craftsmanship.
-
- CRUNCH
- 1. verb. To process, usually in a time-consuming or complicated
- way. The connotation is of an essentially trivial operation that is
- nonetheless painful to perform, possibly because the trivial operation
- must be performed millions of times. When the trivial operation
- involves numerical computation, this is called "number crunching".
- Example: "FORTRAN programs mostly do number crunching".
- 2. verb. To reduce the size of a file by a complicated scheme that
- produces bit configurations completely unrelated to the original data,
- such as by the mathematical technique called "Huffman codes". (The file
- ends up looking like a paper document would if somebody crunched the
- paper into a wad). Since such a compression operation usually requires
- a great deal of computation (it is much more sophisticated than such
- simper methods as counting consecutive repeated characters), the term
- is doubly appropriate. Sometimes the term "file crunching" is used to
- distinguish it from "number crunching".
- 3. noun. A crisis, especially a scarcity of some resource. If you
- don't have much time to get something done, you're in a time crunch.
- See CYCLE CRUNCH.
- 4. noun. The character "#". See CHARACTERS.
-
- CTY (sit'ee) noun.
- The terminal physically associated with a computer's operating
- console. The term is a contraction of "Console TTY", that is, "Console
- TeleTYpe".
-
- CUSPY (cuhsp'ee) adjective.
- Clean, well-written; functionally excellent. A program that
- performs well and interfaces well to users is cuspy.
- Antonyms: RUDE, CRUFTY, BLETCHEROUS.
- This term originated at WPI. It comes from the acronym CUSP, used
- by DEC to mean a "Commonly Used System Program", that is, a utility
- program used by many people. Ideally, such programs, whatever the
- source, are built to high standards of excellence. The extent to which
- a hacker uses this word obviously depends largely on how highly he
- regards DEC-supplied software.
-
- CYCLE noun.
- The "basic unit of computation". What every hacker wants more of.
- You might think that single machine instructions would be the measure
- of computation, and indeed computers are often compared by assessing
- how many instructions they can process per second -- even though some
- instructions take longer that others. Nearly all computers have an
- internal clock, though, and you can describe an instruction as taking
- so many "clock cycles". Typically the computer can access its memory
- once on every clock cycle, and so one speaks also of "memory cycles".
- These are technical meanings of "cycle".
-
- The slang meaning comes from the observation that there are only
- so many cycles per second; and when you are sharing a computer, the
- cycles get divided up among the users. The more cycles the computer
- spends working on your program rather than someone else's, the faster
- your program will run. That's why every hacker wants more cycles: so he
- can spend less time waiting for the computer to respond.
- CYCLE CRUNCH noun. The situation where the number of people si-
- multaneously trying to use the computer has reached the point where no
- one can get enough cycles because they are spread too thin. Usually the
- only solution is to buy another computer.
- CYCLE DROUGHT noun. A scarcity of cycles. It may be due to a cycle
- crunch, but could also occur because part of the computer is tem-
- porarily not working, leaving fewer cycles to go around. Example: "The
- high MOBY is DOWN, so we're running with only half the usual amount of
- memory. There will be a cycle drought until it's fixed".
-
- DAEMON (day'm:n, dee'm:n) noun.
- A program that is not invoked explicitly, but that lies dormant
- waiting for one or more conditions to occur. The idea is that the
- perpetrator of the condition need not be aware that a daemon is lurking
- (though often a program will commit an action only because it knows
- that it will implicitly invoke a daemon). For example, many operating
- systems have a printing daemon. When you want to print a file on some
- printing device, instead of explicitly running a program that does the
- printing, you just copy your file to a particular directory (file
- area). The printer daemon is just a program that is always running; it
- checks the special directory periodically, and whenever it finds a file
- there it prints it and then deletes it. The advantage is that programs
- that want (in this example) files printed need not compete for access
- to the printing device itself, and need not wait until the printing
- process is completed. In particular, a user doesn't have to sit there
- waiting with his terminal tied up while the printing program does its
- work. He can do something else useful while the daemon does its job.
- Daemon and DEMON are often used interchangeably, but seem to have
- discrete connotations. "Daemon" was introduced to computing by people
- working on CTSS, the Compatible Time-Sharing System, which was the
- first time-sharing system, developed at MIT. They pronounced it
- "dee'm:n", and used it to refer to what is now called a DRAGON or
- PHANTOM. The meaning and pronunciation have drifted, and we think the
- definitions given here reflect current usage.
-
- DAY MODE noun.
- The state a person is in when he is working during the day and
- sleeping at night.
- See PHASE and NIGHT MODE.
-
- DDT (dee'dee'tee') noun.
- A program that helps you to debug other programs by showing
- individual machine instruction in a readable symbolic form and letting
- the user change them. At MIT, DDT is also used as the "top-level
- command language" to run other programs.
- The DEC PDP-10 Reference Handbook (1969) contained this footnote
- on the first page of the documentation for DDT:
-
- Historical footnote: DDT was developed at MIT for the PDP-1
- computer in 1961. At that time, DDT stood for "DEC Debugging Tape".
- Since then, the idea of an on-line debugging program has propagated
- throughout the computer industry. DDT programs are now available for
- all DEC computers. Since media other than tape are now frequently used,
- the more descriptive name "Dynamic Debugging Technique" has been
- adopted, retaining the DDT acronym. Confusion between DDT-10 and
- another well-known pesticide, dichloro-diphenyl-trichloroethane
- (C14H9Cl5) should be minimal, since each attacks a different, and
- apparently mutually exclusive, class of bugs.
-
- Sad to say, this quotation was removed from later editions of the
- handbook as DEC became much more "businesslike".
-
- DEADLOCK noun.
- A situation wherein two or more processes (or persons) are unable
- to proceed because each is waiting for another to do something.
- Here is a typical example: Two programs running on the same computer
- both want the exclusive use of two things, say a line printer and a
- disk. The first one grabs the line printer and the tries to grab the
- disk, but fails because the second one successfully grabbed the disk
- and is now waiting to get the line printer.
- Deadlock also occurs when two people meet in a narrow corridor and
- each tries to be polite by moving aside to let the other pass -- but
- they end up swaying from side to side without making any progress
- because they always move the same way at the same time.
- Synonym: DEADLY EMBRACE.
-
- DEADLY EMBRACE noun.
- DEADLOCK. This term is usually used only when exactly two
- processes are involved, while "deadlock" can involve any number. Also,
- "deadly embrace" seems to be the more popular term in Europe, while
- "deadlock" is more frequently used in the United States.
-
- DELTA noun.
- 1. A change, especially a small or incremental change. Example: "I
- just doubled the speed of my program!" "What was the delta on program
- size?". "About thirty percent". (He doubled the speed of his program,
- but increased its size by thirty percent).
- 2. A small quantity, but not so small as EPSILON.
-
- DEMENTED adjective.
- Useless; totally nonfunctional; BRAIN_DAMAGED.
- This is yet another term of disgust used to describe a program.
- The connotation in this case that the program works as designed, but
- the design is bad; perhaps also that the program explicitly exhibits
- strange behavior. For example, a program that generates large numbers
- of meaningless error messages, implying that it is on the point of
- imminent collapse, would be described as demented.
-
- DEMON (dee'm:n) noun.
- A portion of a program which is not involved explicitly, but which
- lies dormant waiting for some condition(s) to occur. See DAEMON.
- Demons are usually processes that are pieces of a single program,
- while daemons are usually entire programs running in the context of a
- large system, such as an operating system. This distinction is
- admittedly not hard and fast. Demons are particularly common in
- artificial intelligence programs. For example, a knowledge manipulation
- program might implement inference rules as demons. Whenever a new piece
- of knowledge was added, various demons would activate (which demons
- depends on the particular piece of data) and would create additional
- pieces of knowledge by applying their respective inference rules to the
- original piece. These new pieces could in turn activate more demons as
- the inferences filtered down through chains of logic. Meanwhile the
- main program could continue with whatever its primary task was.
-
- DIDDLE (did':l)
- 1. verb. To work with in a not particularly serious manner; to
- make a very simple change (as to a program). Examples: "Let's diddle
- this piece of code and see if the problem goes away". (That is, let's
- try the obvious quick fix). "I diddled the text editor to ring the bell
- before it deletes all your files".
- 2. noun. The action of result of diddling.
- Synonyms: TWEAK, TWIDDLE.
-
- DIKE (diek) verb.
- To remove or disable a portion of something, as a wire form a
- computer or subroutine from a program.
- A standard slogan: "When in doubt, dike it out". (The implication
- is that the program [or whatever] is so bad that taking something out
- can only make things better!)
- The word "dikes" is widely used among mechanics and engineers to
- mean "diagonal cutters", a heavy-duty metal cutting device. To "dike
- something out" means to use such cutters to remove something. Among
- hackers, this term has been metaphorically extended to nonphysical
- objects such as pieces of program.
-
- DO PROTOCOL verb.
- To perform an interaction with somebody or something according to
- a well-defined standard procedure. For example: "Let's do protocol with
- the check" at a restaurant means to ask the waitress for the check,
- calculate the tip and everybody's share, make change as necessary, and
- pay the bill.
-
- DOUBLE BUCKY adjective.
- Using both the "control" and "meta" keys on a keyboard that has
- them. "The EMACS command to reformat a LISP program is double-bucky-G".
- (That is, the command is control-meta-G).
- For a complete explanation, see BUCKY BITS.
-
- The following lyrics were written on May 27, 1978, in celebration
- of the Stanford keyboard. A typical MIT comment was that the "bucky
- bits" ("control" and "meta" shifting keys) were nice, but there weren't
- enough of them -- you could only type 512 different characters on a
- Stanford keyboard. An obvious thing was simply to add more shifting
- keys, and this was eventually done. One problem is that a keyboard with
- that many shifting keys is hard on touch typists, who don't like to
- move their hands away from the home position on the keyboard. It was
- half-seriously suggested that the extra shifting keys be pedals; typing
- on such a keyboard would be very much like playing a pipe organ. This
- idea is mentioned below, in what is a parody of a very fine song by
- Jeffrey Moss called "Rubber Duckie", which was published in The Sesame
- Street Songbook.
-
- Double Bucky
-
- Double bucky, you're the one!
- You make my keyboard lots of fun.
- Double bucky, an additional bit or two:
- (Vo-vo-de-o!)
- Control and meta, side by side.
- Augmented ASCII, nine bits wide!
- Double bucky! Half a thousands glyphs, plus a few!
- Oh,
- I sure wish that I
- Had a couple of
- Bits more!
- Perhaps a
- Set of pedals to
- Make the number of
- Bits four:
- Double double bucky!
- Double bucky, left and right
- OR'd together, outta sight!
- Double bucky, I'd like a whole word of
- Double bucky, I'm happy I heard of
- Double bucky, I'd like a whole word of you!
-
- --The Great QUUX
- (with apologies to Jeffrey Moss)
-
- DOWN adjective.
- Not working; deactivated. Example: "The Up escalator is down".
- That is considered a humorous thing to say, but "The elevator is down"
- always means "The elevator isn't working", and never refers to what
- floor the elevator is on.
- Antonym: UP.
- GO DOWN verb. To stop functioning, usually said of the SYSTEM. The
- message every hacker hates to hear from the operator is, "The system
- will go down in five minutes".
- TAKE DOWN, BRING DOWN verb. To deactivate purposely, usually for
- repair work. Example: "I'm taking the system down to work on that BUG
- in the tape drive".
- See CRASH.
-
- DPB (d:-pib', duh-pib') verb.
- To plop something down in the middle. Silly. Example: "Dpb
- yourself into that couch there". (The connotation would be that the
- couch is full except for one slot just big enough for you to sit in.
- DPB means "DePosit Byte", and is the name of a PDP-10 instruction that
- inserts some BITS into the middle of some other bits).
-
- DRAGON noun.
- A program similar to a DAEMON, except that it doesn't sit around
- waiting for something to happen but is instead used by the SYSTEM to
- perform various useful tasks that just have to be done periodically.
- A typical example would be an accounting program that accumulates
- statistics, keeps track of who is logged in, and so on.
- Another example: Most time-sharing systems have several terminals,
- and at any given time some are in use and some are sitting idle. The
- idle ones usually sit there with some idiotic message on their screens,
- such as "logged off", from the last time someone used it. One time-
- -sharing system at MIT puts these idle terminals to good use by
- displaying useful information on them, such as who is using the
- computer, where they are, what they're doing, and what their telephone
- numbers are, along with other information such as pretty pictures (the
- picture collection includes a unicorn, Snoopy, and the U.S.S. Enter-
- prise from "Star Treck"). All this information is displayed on idle
- terminals by the "name dragon", so called because it originally printed
- just the names of the users. (That it now shows all kinds of things,
- including useless though pretty pictures, is an example of CREEPING
- FEATURISM). The "name dragon" is a program started up by the system,
- and it runs about every five minutes and updates the information on all
- idly terminals.
-
- DWIM (dwim) noun.
- A complicated procedure (in the INTERLISP dialect of LISP) that
- attempts to correct your mistakes automatically. For example, if you
- spell something wrong or don't balance your parentheses properly, it
- tries to figure out what you meant. DWIM stands for "Do What I Mean".
- When this works, it is very impressive. When it doesn't work, anything
- can happen.
- When a program has become very big and complicated -- so com-
- plicated that no one can understand how to use it -- it is often
- suggested in jest that dwim be added to it.
- See BELLS AND WHISTLES.
-
- EL CAMINO BIGNUM (el' k:-mee'noh big'num) noun.
- El Camino Real.
- El Camino Real is the name of a street through the San Francisco
- peninsula that originally extended (and still appears in places) all
- the way down to Mexico City. Navigation on the San Francisco peninsula
- is usually done relative to El Camino Real, which is assumed to run
- north and south even tough it doesn't really in many places (see
- LOGICAL). El Camino Real runs right past Stanford University, and so is
- familiar to hackers.
- The Spanish word real, which has two syllables (ree-ahl'), means
- "royal"; El Camino Real is "the royal road". Now, the English word real
- is used in mathematics to describe numbers (and by analogy is misused
- in computer jargon to mean floating-point numbers). In the FORTRAN
- language, for example, a "real" quantity is a number typically precise
- to seven decimal places; and a "double-precision" quantity is a larger
- floating-point number, precise to perhaps fourteen decimal places.
- When a hacker from MIT visited Stanford in 1976 or so, he remarked
- what a long road El Camino Real was. Making a pun on "real", he started
- calling it "El Camino Double Precision". But when the hacker was told
- that the road was hundreds of miles long, he renamed it "El Camino
- Bignum", and among hackers that name has stuck. (See BIGNUM).
-
- ENGLISH noun.
- The source code for a program, which may be in any computer
- language.
- This term is slightly obsolete, and used mostly by old-time
- hackers who were around MIT in the mid-1960s. To a real hacker, a
- program written in his favorite programming language is as readable as
- English.
-
- EPSILON (ep'si-lahn)
- 1. noun. A small quantity of anything. Example: "The cost is
- epsilon".
- 2. adjective. Very small, negligible. "I tried to speed up the
- program, but got epsilon improvement".
- WITHIN EPSILON OF preposition. Close enough to be indistin-
- guishable for all practical purposes. This is even closer than being
- within DELTA of. Example: "That's now what I asked for, but it's within
- epsilon of what I wanted". Alternatively, it may mean not close enough,
- but very little is required to get is there: "My program is within
- epsilon of working".
- EPSILON SQUARED noun. A quantity even smaller than epsilon, as
- small in relation to epsilon as epsilon is to something normal. Suppose
- you buy a large computer for one million dollars. You probably need a
- thousand-dollar terminal to go with it, but by comparison the cost of
- that is epsilon. If you need a ten-dollar cable to connect them
- together, its cost is epsilon squared.
- See DELTA.
- The terms epsilon and delta are names of Greek letter; the slang
- usage stems from the traditional use of these letters in mathematics
- for very small numerical quantities, particularly in so-called
- "epsilon-delta" proofs in the differential calculus.
- Once "epsilon" has been mentioned, "delta" is usually used to mean
- a quantity that is slightly greater than epsilon but still very small.
- For example, "The cost isn't epsilon, but it's delta" means that the
- cost isn't totally negligible, but it is nevertheless very small. A
- quantity that is a little bit smaller than epsilon is "epsilon over
- 2", and "epsilon squared" is very much smaller than epsilon.
-
- EXCH (eks'ch:, ekstch) verb.
- To exchange two things, one for the other; to swap places. Silly.
- If you point to two people sitting down and say "Exch!" you are asking
- them to trade places.
- EXCH, meaning EXCHange, is the name of a PDP-10 instruction that
- exchanges the contents of a register and a memory location.
-
- EXCL (eks'c:l) noun.
- The character "!". See CHARACTERS.
-
- FAULTY adjective.
- Nonfunctional; buggy. This word means about the same thing as BAG-
- BITING, BLETCHEROUS, and LOSING, but the connotation is much milder.
-
- FEATURE noun.
- 1. An intended property of behavior (as of a program). Whether it
- is good is immaterial.
- 2. A good property or behavior (as of a program). Whether it was
- intended is immaterial.
- 3. A surprising property of behavior; in particular, one that is
- purposely inconsistent because it works better that way. For example,
- in the EMACS text editor, the "transpose characters" command will
- exchange the two characters on either side of the cursor on the screen,
- except when the cursor is at the end of a line; in that case, the two
- characters before the cursor are exchanged. While this behavior is
- perhaps surprising, and certainly inconsistent, it has been found
- through extensive experimentation to be what most users want. The
- inconsistency is therefore a feature and not a BUG.
- 4. A property or behavior that is gratuitous or unnecessary,
- though perhaps impressive or cute. For example, one feature of the
- MACLISP language is the ability to print numbers as Roman numerals. See
- BELLS AND WHISTLES.
- 5. A property of behavior that was put in to help someone else but
- that happens to be in your way. A standard joke is that a bug can be
- turned into a feature simply by documenting it (then theoretically no
- one can complain about it because it's in the manual), or even by
- simply declaring it to be good. "That's not a bug; it's a feature!"
- If someone tells you about some new improvement to a program, you
- might respond, "Feetch, feetch!" The meaning of this depends critically
- on vocal inflection. With enthusiasm, it means something like "Boy,
- that's great! What a great HACK!" Grudgingly or with obvious doubt, it
- means "I don't know. It sounds like just one more unnecessary and
- complicated thing." With a tone of resignation, it means "Well, I'd
- rather keep it simple, but I suppose it has to be done".
- The following list covers the spectrum of terms used to rate
- programs or portions thereof (except for the first two, which tend to
- be applied more to hardware or to the SYSTEM, but are included for
- completeness):
-
- CRASH LOSS HACK
- STOPPAGE MISFEATURE WIN
- BRAIN DAMAGE CROCK FEATURE
- BUG KLUDGE PERFECTION
-
- The last is never actually attained.
-
- FEEP (feep)
- 1. noun. The soft electronic "bell" of a display terminal (except
- for a DEC VT-52!): a beep.
- 2. verb. To make (or to cause a terminal to make) a "feep" sound.
- FEEPER noun. The device in the terminal (usually a loudspeaker of some
- kind) that makes the feep sound. FEEPING CREATURISM noun. This term
- isn't really well defined, but it sounds so nice (being a spoonerism on
- CREEPING FEATURISM) that most hackers have said or heard it. It
- probably has something to do with terminals prowling about in the dark
- making their customary noises.
- A true TTY does not feep; it has a real mechanical bell that just
- rings. Synonyms for "feep" are "beep", "bleep", or just about anything
- suitably onomatopoeic. (Jeff MacNelly, in his comic strip Shoe, uses
- the word "eep" for sounds made by computer terminals and video games;
- this is perhaps the closest one yet.) The term "breedle" is sometimes
- heard at Stanford, where the terminal bleepers are not particularly
- soft. (They sound more like the musical equivalent of a raspberry or a
- Bronx cheer. For a close approximation, imagine the sound of a "Star
- Trek" communicator's beep lasting for five seconds). By contrast, the
- feeper on a DEC VT-52 terminal has been compared to the sound of a '52
- Chevy stripping it gears.
-
- FENCEPOST ERROR noun.
- An "off-by-one" error: the discrete equivalent of a boundary
- condition.
- This problem is often exhibited in programs containing iterative
- loops: something will be done one time too few or too many. The term
- comes from the following problem: "If you build a fence 100 feet long
- with posts 10 feet apart, how many posts do you need?" (Either 9 or 11
- is a better answer than the obvious 10.)
- For example, suppose you have a long list or array of items and
- want to process items m through n. How many items are there? The
- obvious answer is n-m, but that is off by one. The right answer is
- n-m+1. A program that used the "obvious" formula would have a fencepost
- error in it.
- Not all off-by-one problems are fencepost errors. The game of
- Musical Chairs involves an off-by-one problem where N people try to sit
- in N-1 chairs, but it's not a fencepost error. A fencepost error is
- typified by counting things rather than counting the spaces between
- them, or vice versa, or by neglecting to consider whether one should
- count one or both of the ends of a row.
-
- FINE adjective.
- Good, but not good enough to be CUSPY.
- This term is used primarily at WPI. The word "fine" is oc-
- casionally heard elsewhere, too, but does not connote the implicit
- comparison the higher level of perfection implied by CUSPY.
-
- FLAG noun.
- A variable or quantity that can take on one of two values: a BIT,
- particularly one that is used to indicate one of two outcomes or is
- used to control which of two things is to be done. Example: "This flag
- controls whether to clear the screen before printing the message". "The
- program status word contains several flag bits".
-
- FLAG DAY noun.
- A day on which a change is made that is neither forward- nor
- backward compatible (so old programs won't work under the new system,
- and new programs won't work under the old one), and that is costly to
- make and costly to undo. Example: "If we change MACLISP to use square
- brackets instead of parentheses, it will cause a flag day for every-
- body". A flag day, as well as the weeks or months following, is a time
- of great confusion for everyone concerned.
- This term has nothing to do with the use of the word FLAG to mean
- a variable that has two values. It came into use when a massive change
- was made to the MULTICS time-sharing system to convert from the old
- ASCII code to the new one. This was scheduled for Flag Day, June 14,
- 1966.
-
- FLAKY, FLAKEY adjective.
- Subject to frequent or intermittent failure.
- This use is of course related to the common slang use of the word,
- to describe a person as eccentric or crazy. A system that is flaky is
- working, sort of, enough that you are tempted to try to use it; but it
- fails frequently enough that the odds in favor of finishing what you
- start are low.
-
- FLAME
- 1. verb. To speak incessantly and/or rabidly on some relatively
- uninteresting subject or with a patently ridiculous attitude.
- 2. noun. A speech or dialogue in which the speakers are flaming.
- 3. noun. A subject on which a given person likes to flame.
- FLAME SESSION noun. A meeting in which everyone flames; a "bull
- session".
- FLAME ON verb. To continue to flame.
- FLAMER noun. One who flames: a fanatic.
- FLAMAGE (flaym':j) noun. Flaming; the content of a flame. (Both
- flamage and flaming are used in this sense).
- Synonym: RAVE.
- When a discussion degenerates into useless controversy, one might
- tell the participants, "Now you're just flaming!" or "Stop all that
- flamage!" to get them to cool down (so to speak).
-
- FLAP verb.
- To give the command to unload a MICROTAPE or, more generally, any
- magnetic tape from its drive. (When this operation is finished, the
- take-up reel keeps spinning and the end of the tape goes flap, flap,
- flap...) "I need to use the tape drive; could you please flap your
- tape?"
-
- FLAVOR noun.
- 1. Variety, type, kind. "EMACS commands come in two flavors: sin-
- gle-character and named". "These lights come in two flavors: big red
- ones and small green ones". See VANILLA.
- 2. The attribute that causes something to be FLAVORFUL. Usually
- used in the phrase "yields additional flavor". Example: "This feature
- yields additional flavor by allowing one to print text either right-
- -side-up or upside-down."
- FLAVORFUL adjective. Aesthetically pleasing.
- Antonym: BLETCHEROUS. See TASTE.
-
- FLUSH verb.
- 1. To delete, destroy, or get rid of something, typically
- something that is useless or superfluous. "All that nonsense has been
- flushed". This is standard MIT terminology within the ITS time-sharing
- SYSTEM for aborting an output operation. One speaks of the text that
- would have been printed -- but was not -- as having been "flushed".
- Under that time-sharing system, if you ask to have a file printed on
- your terminal, it is printed a page at a time; at the end of each page,
- it asks whether you want to see more. If you say no, it says "FLUSHED".
- (A speculation is that this term arose from a vivid image of flushing
- unwanted characters by hosing down the internal output buffer, washing
- the characters away before they can be printed.)
- 2. To exclude someone from an activity.
- 3. To leave at the end of a day's work (as opposed to leaving for
- a meal). Examples: "I'm going to flush now". "Time to flush". See GRONK
- OUT.
-
- FOO (foo)
- 1. interjection. Term of disgust. For greater emphasis, one says
- MOBY FOO (see MOBY).
- 2. noun. The first metasyntactic variable. When you have to invent
- an arbitrary temporary name for something for the sake of exposition,
- FOO is usually used. If you need a second one, BAR or BAZ is usually
- used; there is a slight preference at MIT for bar and at Stanford for
- baz. (It was probably at Stanford that bar was corrupted to baz).
- Clearly, bar was the original, for the concatenation FOOBAR is
- widely used also, and this in turn can be traced to the obscene acronym
- "FUBAR" that arose in the armed forces during World War II) If bar is
- used, then baz is used as a third name after that.
- Example: "The bug can happen in this way. Suppose you have two
- functions FOO and BAR. FOO calls BAR with two arguments. Now BAR calls
- BAZ, passing it just one of the two arguments..." In effect, these
- words serve as extra pronouns; they are always "nonce names". The very
- fact that they always serve this purpose allows some abbreviation. The
- preceding example might be shortened without loss of clarity to: "The
- bug can happen in this way. Suppose FOO calls BAR with two arguments.
- Now BAR calls BAZ, passing it just one of the two arguments..."
- Words such as "foo" are called "metasyntactic variables" because,
- just as a mathematical variable stands for some number, so "foo" always
- stands for the real name of the thing under discussion. A hacker avoids
- using "foo" as the real name of anything. Indeed, a standard convention
- is that any file with "foo" in its name is temporary and can be deleted
- on sight.
- FOO? What? What's going on here? See COM MODE.
- FOOBAR. A concatenation of FOO and BAR. "Foo" is certainly a
- favorite among hackers. While its use in connection with BAR clearly
- stems from "FUBAR", its original appearance appears to be untraceable,
- and may derive from other common interjections such as the Yiddish
- "Feh!". Bill Holman featured the word "foo" prominently in his comic
- strip Smokey Stover.
-
- FRIED adjective.
- 1. Nonfunctional because of hardware failure; burned out. Example:
- "The disk controller is fried". (Sometimes this literally happens to
- electronic circuits! In particular, resistors can burn out and
- transformers can melt down, emitting terrible-smelling smoke. However,
- this term is also used metaphorically.)
- 2. Of people, exhausted, "burned out". This is said particularly
- of those who continue to work in such a state, and often used as an
- explanation or excuse. Example: "Yeah, I know that fix destroyed the
- file system, but I was fried when I put it in".
- See FRY
-
- FROB (frahb)
- 1. noun. A protruding arm or trunnion. (This is the official
- definition by the Tech Model Railroad Club at MIT).
- 2. Any somewhat small thing; an object that you can comfortably
- hold in one hand. Something you can frob. See FROBNICATION.
- 3. verb. Abbreviated form of FROBNICATE.
- FROBNICATE (frahb'ni-kayt) verb. To manipulate or adjust; to do
- the appropriate thing to; to play with; to fondle. This word is usually
- abbreviated to simply "frob", but frobnicate is recognized as the
- official full form. Examples: "Please frob the light switch". (That is,
- flip the light switch) "Stop frobbing that clasp. You'll break it".
- Synonyms: TWEAK, TWIDDLE.
- Frob, twiddle, and tweak sometimes connote points along a
- spectrum. Frob connotes aimless manipulation; twiddly connotes gross
- manipulation, often a coarse search for a proper setting; tweak
- connotes fine tuning. Suppose someone is turning a knob on an oscil-
- loscope. If he's carefully adjusting it, searching for some particular
- point, he is probably tweaking it. If he is turning it rather quickly
- while looking at the screen, he is probably twiddling it. But if he's
- just doing it because turning a knob is fun, he's frobbing it.
-
- FROBNITZ (frahb'nitz), plural FROBNITZEM (frahb'nit-z:m) noun.
- 1. An unspecified physical object; a widget; a black box. 2. By
- extension, a data structure in a program, when regarded as an object.
- This rare form is usually abbreviated to FROTZ (frahtz), or more
- commonly, to FROB. Also used are frobnule (frahb'nyool), frobule
- (frahb'yool), and frobnodule (frahb'nahd'yool). Starting perhaps in
- 1979, "frobboz" (fruh-bahz', fr:-bahz'), plural "frobbotzim" (fruh-
- -baht'z:m), has also become very popular, largely due to its exposure
- as a name via the Adventure-type game called Zork (which originated at
- MIT).
-
- FROG, PHROG
- 1. interjection. Term of disgust. (Hackers seem to have a lot of
- them).
- 2. noun. Of things, a CROCK. Of people, something between a turkey
- and a toad.
- FROGGY adjective. Similar to BAGBITING, but milder. "This froggy
- program is taking forever to run!"
-
- FROTZ (frahtz) noun.
- An abbreviated form of FROBNITZ.
- MUMBLE FROTZ interjection. A term of fairly mild disgust, usually
- used as an objection to something someone has just said. See MUMBLE.
-
- FRY verb.
- 1. To fail. Said especially of smoke-producing hardware failures.
- 2. More generally, to become nonworking. (This term is never said
- of software, only of hardware and humans).
- See FRIED.
-
- FTP (ef'tee'pee')
- 1. noun. The File Transfer Protocol for transmitting files between
- systems on the ARPANET.
- 2. noun. A program that implements the protocol and thereby helps
- you to transfer files.
- 3. verb. To transfer a file using the File Transfer Program.
- Example: "Lemme get this copy of Wuthering Heights FTP'd from Stan-
- ford".
- 4. verb. More generally, to transfer a file between two computers
- using any electronic network such as ETHERNET (as opposed, say, to
- using a magnetic tape as the transfer medium).
-
- FUDGE
- 1. verb. To perform in an incomplete but marginally acceptable
- way, particularly with respect to the writing of a program. "I didn't
- feel like doing it all the right way, so I fudged it."
- 2. noun. The code resulting from fudging as defined above.
- 3. verb. To make something come out the way it was supposed to by
- making an ex post facto change, such as to a FUDGE FACTOR.
- All these uses are related to the common slang use of the word to
- mean something like cheating, as when a scientist fudges his mea-
- surements to fit his pet theory.
- FUDGE FACTOR noun. A value or parameter that is varied in an ad
- hoc way to produce a desired result. See SLOP.
-
- GABRIEL noun.
- An unnecessary (in the opinion of the opponent) stalling tactic
- when playing volleyball, such as tying one's shoelaces repeatedly or
- asking the time. Also used to refer to the perpetrator of such tactics.
- GABRIEL MODE noun. The state a person is in when he performs one
- stalling tactic after another. See MODE.
- This is in honor of Richard P. Gabriel, a Stanford hacker and vol-
- leyball fanatic. His reputation for stalling is a bit undeserved, and
- has the status of a running gag. One may speak of "pulling a Gabriel"
- or of "being in Gabriel mode."
- See RPG.
-
- GARPLY (gahrp'lee) noun.
- A meta-word, like FOO. This one is used mostly at Stanford.
-
- GAS
- 1. interjection. A term of disgust and hatred, implying that gas
- should be dispensed in generous quantities, thereby extermination the
- source of irritation. "Some LOSER just reloaded the SYSTEM for no
- reason! Gas!".
- 2. An exclamation suggestion that someone or something ought to be
- FLUSHED (gotten rid of) out of mercy. "The system is getting WEDGED
- every few minutes. Gas!"
- 3. verb. To get rid of; to flush. "You should gas that old CRUFTY
- software".
- GASEOUS adjective. Deserving of being gassed.
-
- GC (jee'see')
- 1. verb. To clean up and throw away useless things. "I think I'll
- GC the top of my desk today".
- 2. To recycle, reclaim, or put to another use.
- 3. To forget. (The implication is sometimes that one has done so
- deliberately). "You told me last week where it was, but I GC'd those
- bits".
- 4. noun. An instantiation of the GC process.
- GC is an abbreviation of "garbage collect" or "garbage col-
- lection", which is computer science jargon for a particular class of
- strategies used to recycle computer memory. One such strategy involves
- periodically scanning all the data in memory and discarding useless
- data items.
- Occasionally the full phrase is used. Note the ambiguity in usage
- which has to be resolved by context: "I'm going to garbage-collect my
- desk" usually means to clean out the drawers, but it could also mean to
- throw away or recycle the desk itself.
-
- GEDANKEN (ge-dahnk-:n) adjective.
- Wild-eyed; impractical; not well-thought-out; untried; untested.
- Gedanken is a German word for thought. A thought experiment is one you
- carry out in you head. In physics, the term "gedanken experiment"
- refers to an experiment that is impractical to carry out but useful to
- consider theoretically. (A classic gedanken experiment of relativity
- theory involves thinking about a man flying through space in an
- elevator). Gedanken experiments are very useful in physics, but you
- have to be careful. It was a gedanken experiment that led Aristotle to
- conclude that heavy things always fall faster than light things (he
- thought about a rock and a feather). This was accepted until Galileo
- proved otherwise.
- Among hackers, however, the word has a pejorative connotation. It
- is said of a project -- especially one on artificial intelligence
- research -- which is written up in grand detail (typically as a Ph.D.
- thesis) without ever begin implemented to any great extent. Such a
- project is usually perpetrated by people who aren't very good hackers
- or find programming distasteful or are just in a furry. A gedanken
- thesis is usually marked by an obvious lack of intuition about what is
- programmable and what is not, and about what does and does not
- constitute a clear specification of an algorithm.
-
- GLASS TTY (glass ti'tee) noun.
- A terminal which has a display screen but which, because of
- hardware or software limitations, behaves like a teletype or other
- printing terminal, thereby combining the disadvantages of both. Like a
- printing terminal, it can't do fancy display hacks; and like a display
- terminal, it doesn't produce hard copy (a paper copy that you can carry
- away with you). An example is the Lear Siegler ADM-3 terminal, which
- was actually advertised as "the dumb terminal" when it first came out
- (implying that it was also cheap). See TTY.
-
- GLITCH
- 1. noun. A sudden interruption in electric service, sanity,
- continuity, or program function. It may or may not be possible to
- recover from it.
- 2. verb. To commit a glitch. See GRITCH.
- An interruption in electric service is usually called a "power
- glitch". This is of grave concern because it usually CRASHES all the
- computers.
- Have you ever been in the middle of a sentence and then forgotten
- what you were going to say? If this happened to a hacker, he might say,
- "Sorry, I just glitched" (This would be a "mental glitch").
- This word almost certainly comes from Yiddish, where the verb
- glitschen means to slide or skid on a slippery surface. A fall while
- walking on ice would be a glitch.
- 3. verb. To scroll a display screen.
- The use of "glitch" to mean "scroll" needs some explanation. When
- a program prints text on a display screen, there is a question of what
- to do when it reaches the last line of the screen. There are two main
- strategies:
- After the last like, go back to the top line (possibly clearing
- the screen first). This is called "wraparound".
- Move all the lines of text on the screen upward one line. The top
- line of text disappears (it "falls off the top of the screen") because
- there's no more room for it, and the bottom line of the screen becomes
- empty and can be used to display the next line of text. This is called
- "scrolling", because it looks as though a papyrus scroll is zipping
- past your eyes, unwinding at the bottom and winding up again at the
- top.
- The advantage of the scrolling technique is that new text always
- appears at the bottom of the screen. The disadvantage is that all the
- text keeps moving upward as new lens are displayed, so it's awfully
- hard to read it as it flashes by on the screen. (Movie fans know about
- this problem from trying to read the credits at the end).
- The computer system at Stanford compromises. It scrolls, but when
- the last line of the screen has been used, the text is moved up many
- line (about ten or so). This means that the top ten lines all disappear
- at once, but the rest stay put on the screen while the next ten lines
- are being displayed at the bottom. So instead of appearing to move
- continuously up the screen, the text "jerks" or "glitches" every five
- seconds or so.
-
- GLORK (glohrk)
- 1. interjection. Term of mild surprise, usually tinged with
- outrage, as when one attempts to save the results of two house of
- editing and finds that the SYSTEM has just CRASHED.
- 2. A meta-word. See FOO.
- 3. verb. Similar to GLITCH, but usually used reflexively. "My
- program just glorked itself".
-
- GOBBLE verb.
- To consume or to obtain. "Gobble up" tends to imply "consume",
- while "gobble down" tends to imply "obtain".
- Examples: "The output spy gobbles characters out of a TTY output
- buffer". (See OUTPUT SPY). "I guess I'll gobble down a copy of the
- documentation tomorrow."
- See SNARF.
-
- GORP (gohrp)
- This is yet another metasyntactic variable like FOO and BAR. It is
- used primarily at CMU. (It may be related to its use as the generic
- term for hiker's dried food, stemming from the acronym "Good Old
- Raisins and Peanuts", but this is uncertain.)
-
- GOSPERISM (gahss'p:r-iz':m)
- A hack, invention, or saying by arch-hacker R. William (Bill)
- Gosper. This notion merits its own term because there are so many of
- them. Many of the entries in HAKMEM are gosperisms. See also LIFE.
-
- GRIND verb.
- 1. To format code, especially LISP code, by indenting the lines so
- that is looks pretty. (This term is used primarily within the MACLISP
- community. Elsewhere, to format code so that it looks nice is to
- "pretty-print" it.)
- 2. To run seemingly interminably, performing some tedious and in-
- herently useless task. Synonym: CRUNCH.
-
- GRITCH
- 1. noun. A complaint (often caused by a GLITCH).
- 2. verb. To complain. Often verb-doubled: "Gritch, gritch".
-
- GROK (grahk) verb.
- To understand, usually in a global sense especially, to understand
- all the implications and consequences of making a change. Example:
- "JONL is the only one who groks the MACLISP compiler".
- This word comes from the science-fiction novel Stranger in a
- Strange Land by Robert Heinlein, where it is a Martian word meaning
- roughly "to be one with".
-
- GRONK (grahnk) verb.
- To clear the state of a WEDGED device and restart it. More severe
- than "to FROB".
- GRONKED adjective. Of people, the condition of feeling very tired
- or sick. Of things, totally nonfunctional. (For things, gronked and
- BROKEN mean about the same thing, but they have very different
- connotations when used of people. "Gronked" connotes physical ex-
- haustion of illness, while "broken" connotes mental or emotional
- illness.)
- GRONK OUT verb. Of things, to cease functioning. "My terminal just
- gronked out". Of people, to go home and go to sleep. "I guess I'll
- gronk out now. See you all tomorrow." When you are gronked, the best
- thing to do is to gronk out.
- "Gronk out" is a more specific term than "flush". In both cases
- you stop hacking and leave, but when you flush you might go home or
- might go to a restaurant or to see a movie. If you gronk out, however,
- you intend to go get some sleep.
- GRONK has been popularized as a noise made by dinosaurs in the
- comic strip B.C., by Johnny Hart, but the hackers' connotation
- apparently predates Hart's usage.
-
- GROVEL verb.
- 1. To work interminably and without apparent progress. Often used
- with "over" or "through". Example: "The file scavenger has been
- groveling through the file directories for ten minutes now".
- 2. To examine minutely or in complete detail. "The compiler
- grovels over the entire source program before beginning to translate
- it." "I groveled through all the documentation, but I still couldn't
- find the command I wanted".
- GROVEL OBSCENELY. This is the standard emphatic form of grovel.
-
- GRUNGY (gruhn'jee) adjective.
- 1. Incredibly dirty, greasy, grubby. Anything that has been washed
- within the last year is not really grungy. If you sleep all night in
- your clothes and then get up and start hacking again, you feel grungy.
- 2. More generally, awful or ugly. Programs (especially CROCKS) can
- be described as grungy. A person with a headache or a cold probably
- feels grungy.
-
- GUBBISH (guhb'ish) noun.
- Garbage; crap; nonsense. "What is all this gubbish?" (This word is
- probably a portmanteau of "garbage" and "rubbish".)
-
- GUN verb.
- To forcibly terminate a program. May be used with or without
- "down". "Some idiot left a useless background program running, soaking
- up half the CYCLES. So I gunned it."
-
- HACK
- 1. noun. A quick bit of work that produces what is needed, but not
- well.
- 2. The result of that work: a CROCK. (Occasionally the connotation
- is affectionate).
- 3. An incredibly good, and perhaps very time-consuming, piece of
- work that produces exactly what is needed.
- 4. The result of that work.
- 5. A clever technique.
- 6. A brilliant practical joke. The value of the hack varies in
- proportion to its cleverness, harmlessness, surprise values, fame, and
- appropriate use of technology.
- 7. verb. With "together", to throw something together so it will
- work. See CRUFT and KLUDGE.
- 8. To bear something emotionally or physically. "I can't hack this
- heat!".
- 9. To work with a computer.
- 10. To work on something (typically a program). In specific sense:
- "What are you doing". "I'm hacking TECO". In general sense: "What do
- you do around here?" "I hack TECO". (The former is time-immediate, the
- latter time-extended.) More generally, "I hack x" is roughly equivalent
- to "X is my bag". Example: "I hack solid-state physics".
- 11. To pull a prank on. See definition 6 above, and also de-
- finition 7 of HACKER.
- 12. To waste time (as opposed to TOOL). Example: "Watcha up to?"
- "Oh, just hacking".
- HACK VALUE noun. Term used as the reason or motivation for
- expending effort toward a seemingly useless goal, the point being that
- the accomplished goal is a hack. For example, the MACLISP language can
- read and print integers as Roman numerals; the code for this was
- installed purely for hack value.
- HACK UP (ON) verb. To hack, but with the connotation that the
- result is a hack as in definition 2, above. Examples: "You need a
- quick-and-dirty sorting routine? I'll see if I can hack one up by
- tomorrow." "I hacked up on EMACS so it can use the Greek alphabet".
- HOW'S HACKING? A friendly greeting among hackers. (It recognizes the
- other person as a hacker and invites him to describe what he has been
- working on recently.)
- HAPPY HACKING A farewell.
- BACK TO HACKING Another farewell. "Happy hacking" implies that the
- other person will continue hacking (perhaps you interrupted him). "Oh,
- well, back to hacking" implies that you, the speaker, are going to
- return to work (and perhaps the other person also).
- HACK, HACK. A somewhat pointless but friendly comment, often used
- as a farewell but occasionally also as a greeting.
- "The word 'hack' doesn't really have sixty-nine different
- meanings", according to Phil Agre, an MIT hacker. "In fact, one which
- defies articulation. Which connotation is implied by a given use of the
- word depends in similarly profound ways on the context. Similar remarks
- apply to a couple of other hacker words, most notably RANDOM.
- Hacking might be characterized as "an appropriate application of
- ingenuity". Whether the result is a quick-and-dirty patchwork job or a
- carefully crafted work of art, you have to admire the cleverness that
- went into it. Here are examples of practical-joke hacks:
-
- (1) In 1961, students from Caltech (California Institute of
- Technology in Pasadena) hacked the Rose Bowl football game. One student
- posed as a reporter and "interviewed" the director of the University of
- Washington card stunts (such stunts involve people in the stands who
- hold up colored cards to make pictures). The reporter learned exactly
- how the stunts were operated, and also that the director would be out
- to dinner later.
- While the director was eating, the students (who called themselves
- the "Fiendish Fourteen") picked a lock and stole one of the direction
- sheets for the card stunts. They then had a printer run of 2300 copies
- of the sheet. The next day they picked the lock again and stole the
- master plans for the stunts, large sheets of graph paper colored in
- with the stunt pictures. Using these as a guide, they carefully made
- "corrections" for three of the stunts on the duplicate instruction
- sheets. Finally, they broke in once more, replacing the stolen master
- plans and substituting the stack of altered instruction sheets for the
- original set. The result was that three of the pictures were totally
- different. Instead of spelling WASHINGTON, the word CALTECH was
- flashed. Another stunt showed the word HUSKIES, the Washington
- nickname, but spelled it backward. And what was supposed to have been a
- picture of a husky instead showed a beaver. (Both Caltech and MIT use
- the beaver as a mascot. Beavers are nature's engineers).
- After the game, the Washington faculty athletic representative
- said, "Some thought it ingenious; others were indignant." The Wa-
- shington student body president remarked, "No hard feelings, but at the
- time it was unbelievable. We were amazed."
- This is now considered a classic hack, particularly because
- revising the direction sheets constituted a form of programming not
- unlike computer programming.
-
- (2) On November 20, 1982, MIT hacked the Harvard-Yale football
- game. Just after Harvard's second touchdown against Yale in the second
- quarter, a small black ball popped up out of the ground at the 40-yard
- line and grew bigger and bigger and bigger. The letters "MIT" appeared
- all over the ball. As the players and officials stood around gawking,
- the ball grew to six feet in diameter and then burst with a bang and a
- cloud of white smoke.
- As the Boston Globe later reported, "If you want to know the
- truth, MIT won The Game".
-
- The prank had taken weeks of careful planning by members of MIT's
- Delta Kappa Epsilon fraternity. The device consisted of a weather
- balloon, a hydraulic ram powered by Freon gas to lift it out of the
- ground, and a vacuum-cleaner motor to inflate it. The hackers made
- eight separate expeditions to Harvard Stadium between 1:00 and 5:00 AM,
- in which they located an unused 110-volt circuit in the stadium and ran
- buried wiring from the balloon device. When the time came to activate
- the device, two fraternity members had merely to flip a circuit breaker
- and push a plug into an outlet.
- This stunt had all the earmarks of a perfect hack: surprise,
- publicity, the ingenious use of technology, safety, and harmlessness.
- The use of manual control allowed the prank to be timed so as not to
- disrupt the game (it was set off between plays so the outcome of the
- game would not be affected). The perpetrators had even thoughtfully
- attached a note to the balloon explaining that the device was not
- dangerous and contained no explosives.
- Harvard president Derek Bok commented: "They have an awful lot of
- clever people down there at MIT, and they did it again." President Paul
- E. Gray of MIT said, "There is absolutely no truth to the rumor that I
- had to do with it, but I wish there were." Such is the way of all good
- hacks.
-
- HACK ATTACK noun.
- A period of greatly increased hacking activity. "I've been up for
- thirty hours; I had a hack attack and finished off that new FEATURE I
- thought would take two weeks to program."
-
- HACKER noun.
- 1. A person who enjoys learning the details of computer systems
- and how to stretch their capabilities -- as opposed to most users of
- computers, who prefer learn only the minimum amount necessary.
- 2. One who programs enthusiastically, or who enjoys programming
- rather than just theorizing about programming.
- 3. A person capable of appreciating HACK VALUE.
- 4. A person who is good at programming quickly. (By the way, not
- everything a hacker produces is a hack).
- 5. An expert on a particular program, or one who frequently does
- work using it or on it. Example: "A SAIL hacker". (This definition and
- the preceding ones are correlated, and people who fit them congregate).
- 6. An expert of any kind. One might be an astronomy hacker, for
- example.
- 7. A malicious or inquisitive meddler who tries to discover
- information by poking around. For example, a "password hacker" is one
- who tries, possibly by deceptive or illegal means, to discover other
- people's computer passwords. A "network hacker" is one who tries to
- learn about the computer network (possibly because he wants to improve
- it or possibly because he wants to interfere -- one can tell the
- difference only by context and tone of voice).
- HACKISH adjective. Being or involving a hack.
- HACKISHNESS, HACKITUDE noun. The quality of being or involving a
- hack. (The word "hackitude" is considered silly; the standard term is
- "hackishness").
- Hackers consider themselves somewhat of an elite, though one to
- which new members are gladly welcome. It is a meritocracy based on
- ability. There is a certain self-satisfaction in identifying yourself
- as a hacker (but if you claim to be one and are not, you're quickly
- labeled BOGUS).
-
- HAIR noun.
- Complexity. "Decoding TECO commands requires a certain amount of
- hair".
- INFINITE HAIR, HAIR SQUARED noun. Extreme complexity. The phrase
- "infinite hair" is usually used in sentences, while "hair squared" is
- used as an interjection. For example: "I wrote a program to do my
- income taxes; properly handling Schedule G requires infinite hair". (To
- which his friend replies, "Hair squared!")
-
- HAIRY adjective.
- 1. Overly complicated. "DWIM is incredibly hairy".
- 2. Incomprehensible. "DWIM is incredibly hairy".
- 3. Of people: High-powered, authoritative, rare, expert, or in-
- comprehensible. This usage is difficult to explain except by example:
- "He knows a hairy lawyer who says there's nothing to worry about". F.
- Lee Bailey would be considered hairy.
-
- HAKMEM (hak'mem) noun.
- MIT Artificial Intelligence Memo 239 (February 1972). A collection
- of neat mathematical, programming, and electronic hacks contributed by
- people at MIT and elsewhere. (The title of the memo really is HAKMEM,
- which is a portmanteau word for "hacks memo".) Some of them are very
- useful techniques or powerful theorems, but most fall into the category
- of mathematical and computer trivia. A sampling of the entries (with
- authors), slightly paraphrased:
-
- Item 41. (Gene Salamin) There are exactly 23,000 prime numbers
- less than 2^18.
- Item 46. (Rich Schroeppel) The most probable suit distribution in
- bridge hands is 4-4-3-2, as compared to 4-3-3-3, which
- is the most evenly distributed. This is because the
- world likes to have unequal numbers: a thermodynamic
- effect saying things will not be in the state of lowest
- energy, but in the state of lowest disordered energy.
- Problem 81 (Rich Schroeppel) Count the magic squares of order 5
- (that is, all the 5-by-5 arrangements of the numbers
- from 1 to 25 such that all rows, columns and diagonals
- add up to the same number). There are about 320 million,
- not counting those that differ only by rotation and re-
- flection.
- Item 174. (Bill Gosper and Stuart Nelson) 21963283741 is the only
- number such that if you represent it on the PDP-10 as
- both an integer and a floating-point number, the bit
- patterns of the two representations are identical.
-
- HAKMEM also contains some rather more complicated mathematical and
- technical items, but these examples show some of its fun flavor.
-
- HANDWAVE
- 1. verb. To gloss over a complex point; to distract a listener; to
- support a (possibly actually valid) point with blatantly faulty logic.
- If someone starts a sentence with "Clearly..." or "Obviously..." or "It
- is self-evident that...", you can be sure he is about to handwave.
- The idea is that if you wave your hands at the right moment, the
- listener may be sufficiently distracted that he will not notice that
- what you have said is BOGUS. Alternatively, if a listener does object,
- you might try to dismiss the objection "with a wave of your hand".
- 2. noun. A specific act of handwaving.
- The use of this word is often accompanied by gestures both hands
- up, palms forward, swinging the hands in a vertical plane pivoting at
- the elbows and/or shoulders (depending on the magnitude of the
- handwave); alternatively, holding the forearms still while rotating the
- hands at the wrist suffice as a remark. If a speaker makes an outra-
- geous, unsupported assumption, you might simply wave your hands in this
- way as an accusation, more eloquent than words could express, that his
- logic is faulty.
-
- HANG verb.
- 1. To wait for some event to occur; to hang around until something
- happens. Example: "The program prints out a menu and then hangs until
- you type a character".
- 2. To wait for some event that will never occur. "The system is
- hanging because the disk controller never sent the interrupt signal".
- HUNG adjective. In the state of hanging. If you're hacking, away
- at a terminal and suddenly the computer stops responding, you might
- yell across the hallway, "Is the system hung?".
- Synonym: WEDGED.
-
- HARDWARILY (hahrd-war':-lee) adverb.
- In a way pertaining to hardware. "The SYSTEM is hardwarily
- unreliable". Note the adjective "hardwary" is not used. See SOFTWARILY.
-
- HIRSUTE adjective.
- This word is occasionally used humorously as a synonym for HAIRY.
-
- HOOK noun.
- An extraneous piece of software or hardware included in order to
- simplify later changes of to permit changes by a user. For instance, a
- PDP-10 program might execute a location that is normally a JFCL (no
- operation), but by changing the JFCL to a PUSHJ (subroutine call) one
- can insert a debugging routine at that point.
- As another example, a simple program that prints numbers might
- always print them in base ten, but a more flexible version would let a
- variable determine what base to use. Setting the variable to "5" would
- make the program print numbers in base five. The variable is a simple
- hook. An even more flexible program might examine the variable and
- treat any other number as the address of a user-supplied program for
- printing a number. This is a very powerful hook: one can then write a
- routine to print numbers as Roman numerals, say, or as Hebrew ch-
- aracters, and connect it to the program by hanging it on the hook.
- Often the difference between a good program and a superb one is that
- the latter has useful hooks in judiciously chosen places. Both may do
- the original job about equally well, but the one with the hooks is much
- more flexible for future expansion of capabilities.
-
- ILL MEM REF (ill'mem'ref') noun.
- A lapse of memory; a GLITCH. This phrase is a contraction of
- "illegal memory reference", computer jargon for the result of im-
- properly accessing a computer's memory. Example: "I recognized his
- face, but got an ill mem ref on his name".
- See NXM.
-
- INFINITE adjective.
- Consisting of a large number of objects; extreme. Used very
- loosely. Example: "This program produces infinite garbage". "He is an
- infinite LOSER". See HAIR.
- The slang use of "infinite" is an abuse of its precise technical
- meaning in mathematics.
-
- INTERCAL (int':r-cal) noun.
- A computer language designed by Donald R. Woods and James M. Lyon.
- INTERCAL is purposely different from any other computer language in all
- ways but one: it is purely written language, being totally unspeakable.
- The name "INTERCAL" is an abbreviation for "Compiler Language With
- No Pronounceable Acronym".
- An excerpt from the INTERCAL Reference Manual will make the style
- of the language clear. In most programming languages, if you want a
- variable (say A) to have the value 65536, you would write something
- like
- LET A=65536
- or
- A:=65536;
-
- The INTERCAL Reference Manual, however, explains that "it is a
- well-known and oft-demonstrated fact that a person whose work is
- incomprehensible is held in high esteem. For example: if one were to
- state that the simplest way to store 65536 in an INTERCAL variable is
- DO :1 <- #0ó#256
- any sensible programmer would say that that was absurd. Since this is
- indeed the simplest method, the programmer would be made to look
- foolish in front of his boss, who would of course have happened to turn
- up, as bosses are wont to do. The effect would be no less devastating
- for the programmer having been correct.".
- INTERCAL has many other peculiar features, as well, to make it
- even more unspeakable. The language was actually implemented and used
- by many people at Princeton University.
- See CHARACTERS for a discussion of names of characters in
- INTERCAL.
-
- IRP (urp) verb.
- To perform a series of tasks repeatedly with a minor change each
- time through. A hacker who is also a teaching assistant might say, "I
- guess I'll IRP over these homework papers and give each a RANDOM
- grade".
- The word "IRP" is an acronym for "Indefinite RePeat". It is the
- name of a command in the MIDAS assembler, a program that translates
- PDP-10 instructions from a symbolic form to binary bits.
-
- JEDGAR (jed'g:r)
- A "counterspy" program. See OUTPUT SPY.
-
- JFCL (j:-fik':l, jif'k:l) verb.
- To cancel or annul something. "Why don't you jfcl that out?"
- The PDP-10 has several instructions that don't do anything (remember
- that SKIP means "Do not SKIP", as explained in the entry for AOS).
- However, the fastest do-nothing instruction happens to be JFCL, which
- stands for "Jump if Flag set and the CLear the flag". This does
- something useful, but is a very fast no-operation if no flag is
- specified.
- If one wants to patch a program by removing one instruction, the
- easiest thing to do is to replace the instruction with one that doesn't
- do anything. Such and instruction is said to have been jfcl'd out. This
- bit of jargon was then extended metaphorically.
- The license plate on hacker Geoff Goodfellow's BMW is JFCL.
-
- JIFFY (jif'ee) noun.
- 1. The time unit used by a clock attached to a computer to measure
- CPU time, typically either 1/60 second or (less commonly) one mil-
- lisecond. "The swapper runs every six jiffies" means that the virtual
- memory management routine is executed once for every six ticks of the
- computer's clock, or ten times a second.
- 2. An indeterminate time from a few seconds to forever. "I'll do
- it in a jiffy" means certainly not now and possibly never. This is a
- bit contrary to the more widespread use of the word.
-
- JOCK noun.
- A programmer who is characterized by the large and somewhat
- brute-force programs he writes. Brute-force programs typically work by
- enumerating all possible combinations of things in an effort to find
- the one combination that solves the problem. An example of a brute-
- -force program is one that sorts ten thousand numbers by examining them
- all, picking the smallest one, and saving it in another table; then
- examining all the numbers again and picking the smallest on except for
- the one it already picked; and in general choosing the next number by
- examining all ten thousand numbers and choosing the smallest one that
- hasn't yet been picked (as determined by examining all the ones already
- picked.)
- Yes, the program will produce the right answer, but it will be
- much slower than a program that uses even a modicum of cleverness to
- avoid most of the work. (A little bit of computer science -- spe-
- cifically, the theory of algorithms -- will show that a typical large
- computer such as a PDP-10, using a clever sorting method, can sort ten
- thousand numbers in about eight seconds, while the brute-force method
- outlined above would take about 40 days.)
-
- J. RANDOM (jay' ran'd:m) adjective.
- Arbitrary; ordinary; any one; "any old". Would you let J.Random LOSER
- marry your daughter?". See RANDOM.
-
- JRST (jusrt) verb.
- 1. To suddenly change subjects, with no intention of returning to
- the previous topic. Usage: rare and considered silly.
- 2. To jump. "Jack be nimble, Jack be quick, Jack jrst over the
- candle stick". This is even sillier.
- The PDP-10 JUMP instruction means "Do not jump", as explained in
- the definition of AOS. The JUMPA instruction ("JUMP Always") does jump,
- but it isn't quite so fast as the JRST instruction ("Jump and ReSTore
- flags"). The instruction is used so frequently that the speed matters,
- so all PDP-10 hackers automatically use the faster though more obscure
- JRST instruction.
-
- KLUGE, KLUDGE (klooj) noun.
- 1. A Rube Goldberg device in hardware of software.
- 2. A clever programming trick intended to solve a particularly
- nasty case in an efficient, if not clear, manner. Often used to repair
- BUGS. Often verges on being a CROCK.
- 3. Something that works for the wrong reason.
- 4. verb. To insert a kluge into a program. "I've kluged this
- routing to get around that weird bug, but there's probably a better
- way". Also "kluge up".
- 5. A feature that is implemented in a RUDE manner.
- KLUGE AROUND. To avoid (a problem) by inserting a kluge.
-
- LASER CHICKEN noun.
- Kung Pao Chicken, a standard Chinese dish containing chicken,
- peanuts, and bell peppers in a spicy pepper-oil sauce. A few hackers
- call it "laser chicken" for two reasons: It can ZAP you just like a
- laser, and the pepper-oil sauce has a red color reminiscent of a laser
- beam.
-
- LIFE noun.
- A cellular-automaton game invented by mathematician John Horton
- Conway, and first introduced publicly by Martin Gardner in his column
- "Mathematical Games" (Scientific American", October 1970). Hackers at
- various places contributed to the mathematical analysis of this game,
- notably Bill Gosper at MIT. When a hacker mentions "life", he is much
- more likely to mean this game than the magazine, the breakfast cereal,
- or the human state of existence.
-
- LINE FEED
- 1. verb. To feed the paper through a terminal by one line (in
- order to print on the next line). On a display terminal, to move the
- cursor down to the next line of the screen.
- 2. noun. The "character" which, when sent to a terminal by the
- computer, causes the terminal to perform this action.
- This is standard ASCII terminology.
-
- LINE STARVE
- 1. verb. To feed the paper through the terminal the wrong way by
- one line. (Most terminals can't do this!) On a display terminal, to
- move the cursor up to the previous line of the screen. Example: "To
- print X squared, you just output X, line starve, 2, line feed". (The
- line starve causes the "2" to appear on the line above the "X", and the
- line feed gets back to the original line.)
- 2. noun. A "character" (or character sequence) that causes a
- terminal to perform this action.
- This is not standard ASCII terminology. Even among hackers it is
- considered a bit silly.
-
-
- LOGICAL adjective.
- Conventional; assumed for the sake of exposition or convenience;
- not the actual thing but in some sense equivalent to it; not ne-
- cessarily corresponding to reality.
- Example: If a person who had long held a certain post (for
- example, Les Earnest at Stanford) left and was replaced, the re-
- placement would for a while be known as the "logical Les Earnest."
- Pepsi might be referred to as "logical Coke" (or vice versa).
- At Stanford, "logical" compass directions denote a coordinate
- system in which "logical north" is toward San Francisco, "logical
- south" is toward San Jose, "logical west" is away from the ocean --
- even though logical north varies between physical (true) north near San
- Francisco and physical west near San Jose. The best rule of thumb here
- is that El Camino Real by definition always runs north-and-south. In
- giving directions, one might say, "To get to Rincon Taraco Restaurant,
- get onto EL CAMINO BIGNUM going logical north". Using the word
- "logical" helps to prevent the recipient from worrying about the fact
- that the sun is setting almost directly in front of him as he travels
- "north".
- A similar situation exists at MIT. Route 128 (famous for the ele-
- ctronics industries that have grown up along it) is a three-quarters
- circle surrounding Boston at a radius of ten miles, terminating at the
- coast line at each end. It would be most precise to describe the two
- directions along this highway as being "clockwise" and "counter-
- clockwise", but the road signs all say "north" and "south", res-
- pectively. A hacker would describe these directions as "logical north"
- and "logical south", to indicate that they are conventional directions
- not corresponding to the usual convention for those words. (If you went
- logical south along the entire length of Route 128, you would start out
- going northwest, curve along to the south, and finish headed due east!)
- Synonym: VIRTUAL. Antonym: physical.
- This use is an extension from its technical use in computer
- science. A program can be written to do input or output using a
- "logical device". When the program is run, the user can specify which
- "physical" (actual) device to use for that logical device. For example,
- a program might send all its error messages to a logical device called
- ERROR; the user can then specify whether logical device ERROR should be
- terminal, a disk file, or the NULL DEVICE (to throw the error messages
- away).
- A speculation is that the word "logical" is used because, even
- though a thing isn't the actual object in question, you can reason
- logically about the thing as if it were the actual object.
-
- LOSE verb.
- 1. To fail. A program loses when it encounters an exceptional
- condition or fails to work in the expected manner.
- 2. To be exceptionally unaesthetic.
- 3. Of people, to be obnoxious or unusually stupid (as opposed to
- ignorant). See LOSER.
- DESERVE TO LOSE verb. Said of someone who willfully does THE WRONG
- THING, or uses a feature known to be MARGINAL. What is meant is that
- one deserves the consequences of one's losing actions. "Boy, anyone who
- tries to use UNIX deserves to lose!".
- LOSE, LOSE interjection. A reply or comment on an undesirable s-
- ituation. Example: "I accidentally deleted all my files!" "Lose, lose".
-
- LOSER noun.
- An unexpectedly bad situation, program, programmer, or person.
- Someone who habitually loses (even winners can lose occasionally).
- Someone who knows not and knows not that he knows not.
- Emphatic forms are "real loser", "total loser", and "complete
- loser" (but not "MOBY loser", which would be a contradiction in terms).
- LOSS noun. Something (but not a person) that loses: a situation in
- which something is losing. Emphatic forms are "MOBY loss", "total
- loss", "complete loss". (Note that a loss can be moby, even though a
- loser cannot be).
- WHAT A LOSS! interjection. A remark to the effect that a situation
- is bad. Example: Suppose someone said, "Fred decided to write his
- program in ADA instead of LISP." The reply "What a loss!" comments that
- the choice was bad, or that it will result in an undesirable situation
- -- but may also implicitly recognize that Fred was forced to make that
- decision because of outside influences. On the other hand, the reply
- "What a loser!" is a more general remark about Fred himself, and
- implies that bad consequences will be entirely his fault.
- LOSSAGE (lowss':j) noun. The stuff of which losses are made. This
- is a collective noun. "What a loss!" and "What a lossage!" are nearly
- synonymous remarks.
-
- LPT (lip':t) noun.
- A Line PrinTer. "The LIST command can be used to send a file to
- the lpt".
-
- LUSER (loo'z:r) noun.
- A USER who is probably also a LOSER. ("Luser" and "loser" are
- pronounced identically).
- This word was coined about eight years ago at MIT. When you first
- walk up to a terminal at MIT and type "Control-Z" to get the computer's
- attention, it prints out some status information, including how many
- people are already using the computer. It might print "14 users", for
- example. Someone thought it would be a great joke to patch the SYSTEM
- to print "14 losers" instead. There ensued a great controversy, as some
- of the users didn't particularly want to be called losers to theirs
- faces every time they used the computer. For a while several hackers
- struggled covertly, each changing the message behind the back of the
- others; any time you logged into the computer it was even money whether
- it would say "users" or "losers". Finally, someone tried the compromise
- "lusers", and it stuck. To this day, when you connect to the MIT
- computer, it will say "14 lusers".
-
- MACROTAPE (mak'roh-tayp) noun.
- An industry standard reel of magnetic tape, about ten inches in
- diameter, as opposed to MICROTAPE.
-
- MAGIC adjective.
- 1. As yet unexplained, or too complicated to explain. (Arthur C.
- Clarke once said that any sufficiently advanced technology is
- indistinguishable from magic). "The precise form in which CHARACTERS
- are printed to the terminal is controlled by a number of magic BITS".
- "This routine computes the parity of an eight-bit byte in only three
- instructions".
- 2. Characteristic of something that works though no one really
- understands why.
- 3. Characteristic of a FEATURE not generally publicized which
- allows something otherwise impossible -- or a feature formerly in that
- category but now unveiled. Example: the keyboard commands at Stanford
- that override the screen-hiding features.
- See AUTOMAGICALLY.
-
- (1) When Barbara Steele was pregnant, her doctor had her take a
- sonogram to determine whether she was carrying twins. Now Barbara and I
- had both studied computer science at MIT, and we saw that some complex
- computerized image-processing was involved. We asked the doctor how it
- was done, hoping to learn some details about the mathematics involved
- in the computer program. The doctor simply said, "The probe sends out
- sound waves, which bounce off the internal organs. A microphone picks
- up the echoes, like radar, and sends the signals to a computer -- and
- the computer makes a picture." Thanks a lot! Now a hacker would have
- said, "... and the computer magically makes a picture", implicitly
- acknowledging that he had glossed over an extremely complicated
- process.
-
- (2) Some years ago I was snooping around in the cabinets that
- housed the MIT AI lab's PDP-10, and I noticed a little switch glued to
- the frame of on cabinet. It was obviously a homebrew job added by one
- of the lab's hardware hackers (no one knows who).
- You don't touch an unknown switch on a computer without knowing
- what it does, because you might CRASH it. The switch was labeled in a
- most unhelpful way. It had two positions, and scrawled in pencil on the
- metal switch body were the words "magic" and "more magic". The switch
- was in the "more magic" position.
- I called another hacker over to look at it. He had never seen the
- switch before, either. Closer examination revealed that the switch only
- had one wire running to it! The other end of the wire did disappear
- into the maze of wires inside the computer, but it's a basic fact of
- electricity that a switch can't do anything unless there are two wires
- connected to it. This switch had a wire connected on one side and no
- wire on its other side.
- It was clear that this switch was someone's idea of a silly joke.
- Convinced by our reasoning that the switch was inoperative, we flipped
- it. The computer instantly crashed!
- Imagine our utter astonishment. We wrote it off as coincidence,
- but nevertheless restored the switch to the "more magic" position
- before reviving the computer.
- A year later, I told this story to yet another hacker -- David
- Moon, as I recall. (See MOON). He clearly doubted my sanity, or
- suspected me of a supernatural belief in the power of this switch, or
- perhaps thought I was fooling him with a BOGUS SAGA. To prove it to
- him, I showed him the very switch, still glued to the cabinet frame
- with only one wire connected to it. It was still in the "more magic"
- position. We scrutinized the switch and its lone connection and found
- that the other end of the wire, though connected to the computer
- wiring, was connected to a ground pin. That clearly made the switch
- doubly useless: not only was it electrically nonoperative, but it was
- connected to a place that couldn't affect anything anyway. So we
- flipped the switch.
- The computer promptly crashed.
- This time we ran for Richard Greenblatt, a long-time MIT hacker
- who was close at hand. He had never noticed the switch before, either.
- He inspected it, concluded it was useless, got some diagonal cutters
- and DIKED IT OUT. We then revived the computer, and it has run fine
- ever since.
- We still don't know how the switch crashed the machine. There is a
- theory that some circuit near the ground pin was MARGINAL, and flipping
- the switch changed the electrical capacitance enough to upset the
- circuit as millionth-of-a-second pulses went through it. But we'll
- never know for sure. All we can really say is that the switch was
- magic.
- I still have that switch in my basement. Maybe I'm silly, but I
- usually keep it set on "more magic".
-
- MARGINAL adjective.
- 1. Extremely small. "A marginal increase in memory can decrease GC
- time drastically". (In everyday terms, this means that it's a lot
- easier to clean off your desk if you have a spare place to put some of
- the junk while you sort through it). See EPSILON.
- 2. Of extremely small merit. "This proposed new FEATURE seems
- rather marginal to me".
- 3. Of extremely small probability of WINNING; on the edge of
- LOSING. "The power supply was rather marginal anyway; no wonder it
- FRIED".
- MARGINALLY adverb. Slightly, somewhat. "The RAVS (raviolis) here
- are only marginally better than at Small Eating Place".
- MARGINAL HACKS noun. Margaret Jacks Hall, a building into which
- the Stanford Computer Science Department was recently moved.
-
- MESH noun.
- The character "#" (number sign).
- Synonyms: CRUNCH, SPLAT. See CHARACTERS.
-
- MICROTAPE (miek'roh-tayp) noun.
- A DECtape, as opposed to a MACROTAPE. A DECtape is a small reel of
- magnetic tape about four inches in diameter and an inch wide. Unlike
- standard magnetic tapes, microtapes allow "random access" to the data.
- In their heyday they were used in pretty much the same ways one would
- now use a floppy disk: as a small, portable way to save and transport
- files and programs, Apparently the term "microtape" was actually the
- official term used within DEC for these tapes until someone CONSED UP
- the word "DECtape", which of course has more commercial appeal.
-
- MISFEATURE noun.
- A FEATURE that eventually clobbers someone, possibly because it is
- not adequate for a new situation that has evolved. It is not the same
- as a BUG because fixing it involves a gross philosophical change to the
- system's structure. A misfeature is different from a simple and
- unforeseen side effect. The term implies that the misfeature was
- carefully planned, but that not all the consequences or circumstances
- were predicted accurately. Often a feature becomes a misfeature because
- a trade-off is made.
- Example: "Well, yeah, it's kind of a misfeature that file names
- are limited to six characters. That decision was made N years ago to
- simplify the file access software and save space on the disk, and now
- we're stuck with it."
-
- MOBY (moh'bee)
- 1. adjective. Large, immense, complex, impressive. Examples: "A
- Saturn V rocket is a truly moby FROB". (This example is oxymoronic --
- frobs are normally not very large.) "Some MIT undergrads pulled off a
- moby HACK at the Harvard-Yale game."
- 2. noun. The total size of a computer's address space, that is,
- the amount of memory that a given computer can access. Examples: For a
- PDP-10, a moby is 262144 36-bit words; for a PDP-8, it is 4096 12-bit
- words; for a 68000 or a VAX, it is 4294967296 8-bit bytes. This term is
- useful because when a computer has "virtual memory mapping", a computer
- may have more physical memory attached to it than any one program can
- access directly. One can then say, "This computer has six mobies" to
- mean that the ration of physical memory to address space is six --
- without having to say specifically how much memory there actually is.
- That in turn implies that the computer can time-share six
- "full-sized" programs without having to swap programs between memory
- and disk. If a computer has exactly two mobies, then the one with
- smaller (physical) addresses is called the "low moby" and the other one
- is called the "high moby". Example: "Response times will be long today.
- The high moby just FRIED, so we're limping along with only half our
- memory".
- 3. noun. 256K 36-bit words, which is the size of a moby on every
- hacker's favorite computer, the PDP-10. This amount is sufficiently
- close to a megabyte (one million bytes) that sometimes the term "moby"
- and "megabyte" are used interchangeably.
- 4. adjective. An honorific term of address (never of third-person
- reference) usually used to show admiration, respect, and/or
- friendliness to a competent hacker. Example: "So, moby Knight, how's
- the CONS machine doing?" (Tom Knight was one of the designers of MIT's
- LISP Machine, a personal computer designed to run LISP. The prototype
- was called "CONS".)
- 5. adjective. In backgammon, doubles on the dice, as in "moby
- sixes", "moby threes", "moby ones", etc. Compare this with BIGNUMS:
- Double sixes are both bignums and moby sixes, but moby ones are not
- bignums. (The use of term "moby" to describe double ones is sarcastic).
- MOBY FOO, MOBY LOSS, MOBY HACK, MOBY WIN. These are standard
- emphatic forms.
-
- MODE noun.
- A general state, usually used with an adjective or noun describing
- the state. Use of the word "mode" rather that "STATE" implies that the
- state is extended over time, and probably also that some activity
- characteristic of that state is being carried out. Examples: "No time
- to HACK; I'm in these mode". "I'll be in vacation mode next week". "My
- editor is stuck in some weird mode where every CHARACTER I type appears
- twice on the screen". "The E editor normally uses a display terminal,
- but if you're on a TTY it will switch to nondisplay mode".
- This term is normally used in a technical sense to describe the
- state of a program. Extended usage -- for example, to describe people
- -- is definitely slang.
- See DAY MODE, NIGHT MODE, and YOYO MODE; also COM MODE, TALK MODE,
- and GABRIEL MODE.
-
- MODULO (mahd'yoo-loh) preposition.
- Except for. This is from mathematical terminology. One writes "4=2
- mod 9" to mean that 4 and 22 give the same remainder when divided by 9
- (the precise meaning is a bit more complicated, but that's the idea).
- One might say that 4 equals 22 "except for some 9's", because if you
- add two 9's to 4 you get 22. Examples: "Well, LISP seems to work okay
- now, modulo that GC BUG". "I feel fine today modulo a slight headache".
-
- MOON noun.
- 1. A celestial object whose phase is very important to hackers.
- See PHASE OF THE MOON.
- 2. The login name of MIT hacker David A. Moon. Because he hacks
- important system software, his PHASE may also be very important to
- hackers.
-
- MUMBLAGE (muhm'bl:j) noun.
- The topic of one's mumbling. (See MUMBLE). "All that mumblage" is
- used like "all that stuff" when it is not quite clear what it is or how
- it works, or like "all that crap" when "mumble" is being used as an
- implicit replacement for obscenities.
-
- MUMBLE interjection.
- 1. Said when the correct response is too complicated to enunciate
- or the speaker has not thought it out. Often prefaces a longer answer,
- or indicates a general reluctance to get into a big long discussion.
- Example: "Don't you think that we could improve LISP performance by
- using a hybrid reference-count transaction garbage collector, if the
- cache is big enough and there are some extra cache BITS for the
- microcode to use?" "Well, mumble... I'll have to think about it".
- 2. Sometimes used as an expression of disagreement. "I think we
- should buy a VAX". "Mumble!". Common variant: Mumble frotz. (See FROTZ)
- 3. Yet another metasyntactic variable like FOO.
-
- MUNCH verb.
- To transform information in a serial fashion, often requiring
- large amounts of computation. To trace down a data structure.
- Synonyms: CRUNCH, GROVEL. "Munch" connotes somewhat less paint
- than the other two words.
-
- MUNCHING SQUARES noun.
- A display HACK dating back to the PDP-11 (early 1960s) at MIT,
- which employs a trivial computation (involving XOR'ing of x-y display
- coordinates, described in items 146-148 of HAKMEM) to produce an
- impressive display of moving, growing, and shrinking squares. The hack
- usually has a parameter (usually taken from toggle switches) which,
- when well chosen, can produce amazing effects. Some of these,
- discovered recently on the LISP machine, have been christened "munching
- triangles", "munching w's" and "munching mazes". More generally,
- suppose a graphics program produces an impressive and everchanging
- display of some basic form FOO on a display terminal, and does it using
- a relatively simple program; then the program (or the resulting
- display) is likely to be referred to as "munching foos". [By the way,
- note the use of the word foo as a metasyntactic variable in the last
- sentence.]
-
- MUNG (muhng) verb.
- 1. To make changes to a file, often large-scale, usually ir-
- revocable, occasionally accidental.
- 2. To destroy, usually accidentally, occasionally maliciously.
- Note that the SYSTEM only mungs things maliciously (this is a con-
- sequence of Murphy's Law).
- 3. The kind of beans of which the sprouts are used in Chinese
- food. (That's their real name! Mung beans! Really!)
- This word is said to be a recursive acronym: MUNG means Mung Until
- No Good.
- MUNGE (muhnj) verb. Variant of MUNG.
-
- N (en) noun.
- 1. Some large and indeterminate number. "There were N bugs in that
- crock!".
- 2. An arbitrarily large (and perhaps infinite) number.
- 3. A variable whose value is specified by the current context. For
- example: When ordering a meal at a restaurant, "N" may refer to however
- many people there are at the table. From the remark "We'd like to order
- N wonton soups and a family dinner for N minus one", you can deduce
- that one person at the table wants to eat only soup, even though you
- don't know how many people there are. A silly riddle: "How many
- computers does it take to shift the bits in a register?" "N+1: N to
- hold all the bits still, and one to shove the register over."
- NTH (enth) adjective. The ordinal counterpart of N. "Now, for the
- Nth and last time..." In the specific context "Nth-year graduate
- student", N is generally assumed to be at least 4, and is usually 5 or
- more.
- See also 69.
-
- NIGHT MODE noun.
- The state a person is in when he is working at night and sleeping
- during the day. (The advantage of being in night mode is that the
- computers are usually overloaded during the day; at night more CYCLES
- are available).
- See PHASE and DAY MODE.
-
- NIL (nil)
- No. This word is used in reply to a question, particularly one
- asked using the "-P" convention. Example: "Foodp?" "Nil". That simple
- interchange means "Do you want to come eat with us?" "No, thanks". See
- T. (In the LISP language, the name "nil" means "false", among other
- things).
-
- NULL DEVICE noun.
- An input/output device that doesn't do anything. A card reader
- reads cards, and a terminal keyboard reads the characters typed on the
- keyboard, but reading from the null device always yields zeros.
- Similarly, writing to a printer produces words on paper, but writing to
- the null device just throws the output into the BIT BUCKET.
- There is no such physical thing as a null device -- it would be
- pointless to build one -- but it is a useful notion that is provided
- LOGICALLY by many operating systems. If a program normally prints out a
- lot of information and you don't happen to want to see it, you simply
- direct the program to send the output to the null device. The program
- is satisfied because the output is AUTOMAGICALLY discarded without
- wasting paper.
-
- NXM (niks':m)
- A lapse of memory; a GLITCH. This phrase is an acronym for
- "NoneXistent Memory", the result of accessing a computer's memory at an
- address for which no memory has been connected. A NXM is technically a
- special case of an ILL MEM REF, but in slang usage they are practically
- synonymous.
-
- OBSCURE adjective.
- Little-known; incomprehensible; undocumented. This word is used,
- in an exaggeration of its normal meaning, to imply a total lack of
- comprehensibility. "The reason for that last CRASH is obscure". "That
- program has a very obscure command syntax". "This KLUDGE works by
- taking advantage of an obscure FEATURE in TECO". The phrase "moderately
- obscure" implies that it could be figured out but probably isn't worth
- the trouble.
-
- OPEN noun.
- A left parenthesis, "(". This word is used as shorthand to
- eliminate ambiguity when communicating a sequence of characters
- vocally. To read aloud the LISP program "DEFUN FOO (X) (PLUS X 1))",
- which takes an arguments X and adds 1 to it, one might say: "Open
- def-fun foo. Open eks close. Open, plus eks one, close, close." See
- CLOSE.
- OPEN BRACKET noun. The character "[".
- OPEN BRACE noun. The character "{".
-
- OUTPUT SPY noun.
- On the MIT system there is a program that allows you to see what
- is being printed on someone else's terminal. It works by "spying" on
- the other guy's output, by examining the insides of the monitor system.
- It can do this because the MIT system purposely has very little in the
- way of "protection" that prevents one user from interfering with
- another. Fair is fair, however. There is another program that will
- automatically notify you if anyone starts to spy on your output. It
- works in exactly the same way, by looking at the insides that have to
- do with you output. This "counterspy" program is called JEDGAR
- (pronounced as two syllables: jed'gar), in honor of the former head of
- the FBI.
- By the way, the output spy program is called "os" (oh'ess').
- Throughout the rest of computer science, and also at IBM, "OS" means
- "operating system", but among MIT hackers it almost always means
- "output spy".
-
- PARSE verb.
- 1. To determine the syntactic structure of a sentence or other
- utterance. (This is close to the standard English meaning). Example:
- "That was the one I saw you". "I can't parse that".
- 2. More generally, to understand or comprehend. "It's very simple.
- You just kretch the glims and then AOS the zotz" "I can't parse that".
- 3. Of fish, to have to remove the bones yourself (usually at a
- Chinese restaurant). "I object to parsing fish" means "I don't want to
- get a whole fish, but a sliced one is okay". A "parsed fish" has been
- de-boned. There is some controversy whether "unparsed" should mean
- "bony", or also mean "deboned".
- This term is derived from the technical use of the word in
- linguistics. Hackers know about it because some researchers in
- artificial intelligence work on the problem of writing computer
- programs that can understand and/or speak human languages.
-
- PATCH
- 1. noun. A temporary addition to a piece of code, usually as a
- quick-and-dirty remedy to an existing BUG or MISFEATURE. A patch may or
- may not work, and may of may not eventually be incorporated permanently
- into the program.
- 2. verb. To fix something temporarily; to insert a patch into a
- piece of code. See KLUGE AROUND.
-
- PDL (pid':l, pud':l) [acronym for Push Down List] noun.
- 1. A last-in/first-out (LIFO) queue, also known as a "stack" in
- computer science; more loosely, any ordered list of things. Even more
- loosely, any set of things. A person's "pdl" is the set of things he
- has to do in the future. One speaks of the next project to be attacked
- as having "risen to the top of the pdl" (or the top of the stack).
- Examples: "I'm afraid I've got real work to do, so this HACK will
- have to be pushed way down on my pdl." "I haven't done it yet because
- every time I POP my pdl something new gets PUSHED". If you are
- interrupted several times in the middle of a conversation, "my pdl
- overflowed" means "I forget what we were talking about originally".
- (The implication is that too many items were pushed onto the pdl than
- could be remembered, and so the least recent items were lost.) See PUSH
- and POP.
- OVERFLOW PDL noun. The place where you put things when your pdl is
- full. If you don't have one and too many things get pushed, you gorget
- something. The overflow pdl for a person's memory might be a memo pad.
-
- Hey, diddle, diddle
- The overflow pdl
- To get a little more stack;
- If that's not enough
- Then you lose it all,
- And have to pop all the way back.
-
- -- The Great QUUX
-
- The term "pdl" is an acronym for Push Down List, and in its
- technical sense rather than its slang meaning always means a stack. The
- best example of a stack is to be found in a cafeteria: a pile of plates
- sitting on a spring in a well in a cart, so that when you put a plate
- on the top they all sink down; and when you take one off the top the
- rest spring up a bit.
-
- PESSIMAL adjective.
- Maximally bad. "This is a pessimal situation".
- PESSIMIZE verb. To make as bad as possible.
- PESSIMIZING COMPILER noun. A compiler that produces object code
- that is worse than the straightforward or obvious translation. (The
- implication is that the compiler is actually trying to optimize the
- program, but through stupidity is doing the opposite. A few pessimizing
- compilers have been written on purpose, as pranks).
- These words are the obvious Latin-based antonyms for "optimal" and
- "optimize", but for some reason they do not appear in most English
- dictionaries -- although "pessimize" is listed in the Oxford English
- Dictionary.
-
- PHANTOM noun.
- At Stanford, the term "phantom" is used to mean a DRAGON.
-
- PHASE noun.
- The offset of one's waking-sleeping schedule with respect to the
- standard 24-hour cycle. This is a useful concept among people who often
- work at night according to no fixed schedule. Examples: "What's your
- phase?" "I've been getting in about eight P.M. lately, but I'm going to
- phase around to the day schedule by Friday". A person who is roughly 12
- hours out of phase is sometimes said to be in NIGHT MODE. (The term DAY
- MODE is also, but less frequently, used, meaning you're working 9 to 5
- -- or, more likely, 10 to 6.)
-
- It is not uncommon to change one's phase by as much as six hours
- per day on a regular basis. For example, one can stay awake for twenty
- hours and then sleep for ten. This can be a bit of a strain on the
- metabolism when done for extended periods, however. One nice
- phase-changing schedule is to keep a 28-hour day: stay awake 18 hours
- and sleep for ten, for example. Six 28-hour days are equal to seven
- 24-hour days, so this schedule means you can be in day mode on weekends
- and in night mode (or close to it) for most weekdays that way you get
- lots of CYCLES by being awake at night, and yet are reasonably
- synchronized with the REAL WORLD on weekends.
- CHANGE PHASE THE HARD WAY. To stay awake for a very long time in
- order to get into a different phase.
- CHANGE PHASE THE EASY WAY. To stay asleep for a very long time in
- order to get into a different phase.
- The phenomenon of "jet lag" that afflicts travelers who cross many
- time-zone boundaries may be attributed to two distinct causes: the
- strain of travel per se, and the strain of changing phase. Hackers who
- suddenly find that they must change phase drastically in a short period
- of time, particularly the hard way, experience something like jet lag
- without traveling.
-
- PHASE OF THE MOON noun.
- A random parameter on which something is (humorously) said to
- depend. Something that depends on the phase of the moon is at best
- unpredictable, at worst unreliable. (Maybe it is predictable, but
- figuring it out is so complicated it isn't worth it.) Example: "Whether
- the editor will save your file automatically when you exit depends on
- the phase of the moon".
- The "phase of the moon" is one example of RANDOMNESS.
- Once a program written by Gerald Sussman (professor of electrical
- engineering at MIT) and Guy Steele had a BUG that really did depend on
- the phase of the moon! There is a little subroutine that has
- traditionally been used in various programs at MIT to calculate an
- approximation to the moon's true phase; the phase is the printed out --
- at the top of program listings, for example -- along with the date and
- time, purely for fun. (Actually, since hackers spend most of their time
- indoors, this might be the only way they would ever know what the
- moon's phase was!) Steele incorporated this routine into a LISP program
- that, when it wrote out a file, would print a 'timestamp' at the top
- that looked something like this:
-
- ; THE MOON IS 1 DAY, 20 HOURS, 42 MINUTES, AND 54 SECONDS
- ; PAST THE FIRST QUARTER.
- ; THE SUN IS 41*44'1" NORTH OF EAST,
- ; 35*7'26" BELOW THE HORIZON.
- ; THAT MEANS IT IS NOW 2:21 AM
- ; ON WEDNESDAY, MARCH 23, 1983.
-
- (A calculation of the position of the sun was also included for
- additional HACK VALUE. The asterisk was used in lieu of a "degrees"
- symbol to indicate angles). Occasionally the first line of the message
- would be too long and would overflow onto the next line like this:
-
- ; THE MOON IS 2 DAYS, 17 HOURS, 20 MINUTES, AND 45 SECONDS
- ; PAST THE FIRST QUARTER.
- ; THE SUN IS 17*17'46" WEST OF NORTH,
- ; 44*56'42" BELOW THE HORIZON.
- ; THAT MEANS IT IS NOW 10:59 PM
- ; ON WEDNESDAY, MARCH 23, 1983.
-
- When the file was later read back, the program would BARF. The
- length of the first line depended on the precise time when the
- timestamp was printed, and so the bug literally depended on the phase
- of the moon!
- POM (pee-oh-em, pahm) noun. An abbreviation for PHASE OF THE MOON.
- This is usually used in the phrase "POM-dependent", meaning FLAKEY.
-
- POP verb.
- 1. To remove something from a stack or PDL. If a person says he
- has popped something from his pdl, he means he has finally finished
- working on it and can now remove it from the list of things hanging
- over his head.
- 2. To return from a digression. The term "popj" (pop'jay) is also
- used in this sense. "Popj?" as a simple request means "Have we finished
- with this digression? Shall we return to the previous subject of
- conversation?". "Popj!" has more the force of "Stop FLAMING about that,
- you LOSER! Let's return to the main point." "Popj, popj" means roughly
- "Now let's see, where were we?"
- Synonyms: CONTROL-P.
- Antonyms: PUSH, PUSHJ.
- The PDP-10 has instructions named POP and POPJ; the former pops a
- single word from a stack, and the latter (POP and Jump always) is a
- subroutine return instruction.
-
- PPN (pip':n)
- 1. A combination of a "project identifier" and "programmer name",
- used to identify a specific file directory belonging to that pro-
- grammer. This is used in the TOPS-10 operating system that DEC provides
- for the PDP-10. The implicit assumption is that there will be many
- projects, each with several programmers working on it, and that a
- programmer may work on several projects. This is not a bad orga-
- nization; what is totally BOGUS is that projects and programmers are
- identified by octal (base eight) numbers! Hence the term Project-
- -Programmer Number, or PPN. If I were programmer 72534 and wanted to
- work on project 306, I would have to tell the computer
- "login 306,72534". This is totally ridiculous. At CMU the TOPS-10
- system was modified to be somewhat less ridiculous. Projects are
- identified by a letter and three decimal (not octal) digits, and a
- programmer is identified by his two initials, a digit indicating the
- first year he came to CMU, and a fourth character that is used to
- distinguish between, say, Fred Loser and Farlay Luser who both happened
- to arrive the same year. So to use the PDP-10 at CMU one might say
- "login A780GS70". The programmer name "GS70" is also called a "man
- number" at CMU, even though it isn't really a number. At Stanford,
- projects and programmers are identified by three letters or digits
- each. To work on a LISP project at Stanford, I might log in as: "login
- lsp, gls". This is much more mnemonic. Programmer identifiers at
- Stanford are usually the programmers's initials, though sometimes they
- are nicknames or other three-letter sequences. Even though sometimes
- the CMU and Stanford forms are not really (pairs of) numbers, the term
- "ppn" is used to refer to the combination.
- 2. At Stanford, the term "ppn" is often used loosely to refer to
- the programmer name alone. "I want to send you some mail. What's your
- ppn?".
- MIT uses an operating system called ITS that is completely
- unrelated to TOPS-10. ITS does not use PPN's. The closest approximation
- to a ppn on ITS is UNAME (user name), which is a six-character
- programmer name with no project number.
- The names JRN and JRL are sometimes used as example names when
- discussing ppn's; they are understood to be programmer names for
- (fictious) programmers named "J. Random Nerd", and "J. Random Loser".
- (See J. RANDOM). For example, one might say "To log in, type log one
- comma jay are en" (that is, "log 1,JRN"). And the listener will
- understand that he should use his own programmer name in place of JRN.
-
- PROTOCOL
- See DO PROTOCOL.
-
- PSEUDOPRIME (soo'doh-priem) noun.
- A backgammon prime (six consecutive occupied points) with one
- point missing; that is, only five out of six consecutive points are
- really occupied.
- This term is a pun. In mathematics, a pseudoprime is an integer
- that satisfies one of a set of criteria. Any number that passes even
- one of these tests is almost certainly a true prime (an integer that
- cannot be divided evenly by any integer except itself or 1); however,
- there are a very few integers that can fool the tests, so the best you
- can say is that a number that passes the test is "probably" prime. The
- hacker backgammon usage stems from the idea that a pseudoprime is
- almost as good as a prime: it does the job of a prime for most purposes
- until proven otherwise, and that probably won't happen. A true
- backgammon prime guarantees that your opponent cannot escape; a
- backgammon pseudoprime will probably prevent the opponent from
- escaping.
-
- PUNT verb.
- To give up; to decide not to do. Typically there is no intention
- of trying again later. Examples: "Let's punt the movie tonight". "I was
- going to HACK all night to get this FEATURE in, but I decided to punt"
- may mean that you've decided not to stay up all night, and may also
- mean you're not ever even going to put in the feature.
- This doubtless comes from football: When you punt, you give up the
- offense.
-
- PUSH verb.
- 1. To put something onto a stack or PDL. If a person says
- something has been pushed onto his pdl, he means yet another thing has
- been added to the list of things hanging over his head for him to do.
- 2. To enter upon a digression; to save the current discussion for
- later. The term PUSHJ (push'jay) is also used in this sense. "Pushj?"
- means "May I interrupt for a moment?".
- Antonyms: POP, POPJ.
- Synonym: CONTROL-B.
- The PDP-10 has instructions named PUSH and PUSHJ; the former
- pushes a single word onto a stack, and the latter (PUSH and Jump
- always) is a subroutine call instruction.
-
- QUADRUPLE BUCKY adjective.
- 1. Using all four of the shifting keys "control", "meta", "hyper",
- and "super" while typing a character key (on an MIT keyboard that has
- all these keys). This combination is very seldom used in practice,
- because when you invent a new command you usually assign it to some
- character that is easier to type than using all four shift keys. If you
- want to imply that a program has ridiculously many commands or
- features, you can say something like "Oh, the command that makes it
- spin all the tapes while whistling Beethoven's Fifth Symphony is
- quadruple bucky COKEBOTTLE".
- 2. Using four shift keys while typing a fifth character, where the
- four shift keys are the "control", and "meta" keys on both sides of the
- (MIT or Stanford) keyboard. This is very difficult to do! One accepted
- technique is to press the left-control and left-meta keys with your
- left hand, the right-control and right-meta with your right hand, and
- the fifth key with your nose. Such hard-to-type commands are used for
- things that you want to be very sure can't happen accidentally, such as
- throwing away your entire program and starting all over.
- For a complete explanation, see BUCKY BITS.
-
- QUES (kwess)
- 1. noun. The question mark character ("?").
- 2. interjection. What? Also Ques, Ques? See WALL.
-
- QUUX (kwuhks)
- Originally, a meta-word like FOO. This word was coined by Guy
- Steele for precisely this purpose when he was young and naive and not
- yet interacting with the real hacker community. Had he known that "foo"
- was the standard, he would not have bothered. Many people invent such
- silly words; this one seems simply to have been lucky enough to have
- spread a little. In an eloquent display of poetic justice, it has
- returned to the originator in the form of a nickname as punishment for
- inventing this BLETCHEROUS word in the first place.
- QUUXY (kwuhks'ee) adjective. Of or pertaining to a QUUX.
-
- RANDOM
- 1. adjective. Unpredictable (closest to mathematical definition);
- weird. "The SYSTEM's been behaving pretty randomly".
- 2. Assorted; various; undistinguished; uninteresting. "Who was at
- the conference?" "Just a bunch of random business types".
- 3. Frivolous; unproductive; undirected. "He's just a random
- LOSER".
- 4. Incoherent or inelegant; not well organized. "The program has a
- random set of MISFEATURES". "That's a random name for that function".
- "Well, all the names were chosen pretty randomly".
- 5. Gratuitously wrong; poorly done and for no good apparent
- reason. "This subroutine randomly uses six registers where two would
- have sufficed".
- 6. In no particular order, though deterministic. "The I/O channels
- are in a pool, and when a file is opened one is chosen randomly".
- 7. noun. A random hacker. This is used particularly of high school
- students who soak up computer time and generally get in the way. The
- term "high school random" is frequently heard.
- 8. One who lives at Random Hall at MIT.
- J. RANDOM is often prefixed to a noun to make a "name" out of it
- (by analogy to common names such as "J. Fred Muggs"). It means roughly
- "some particular" or "any specific one". The most common uses are "J.
- Random Loser" and "J. Random Nerd". Example: "Should J. Random Loser be
- allowed to delete system files without warning?"
-
- RANDOMNESS noun.
- 1. An unexplainable MISFEATURE; gratuitous inelegance or in-
- consistency; failure to so THE RIGHT THING.
- 2. A HACK or CROCK that depends on a complex combination of
- coincidences; also, the combination upon which the hack or crock
- depends for its accidental failure to malfunction; a situation in which
- several BUGS or MISFEATURES happen to cancel each other.
- See also PHASE OF THE MOON.
-
- RAPE verb.
- To (metaphorically) screw someone or something, violently; in
- particular, to destroy a program or information irrecoverably.
- This term is usually used in describing damage to the file system (that
- portion of the computer system responsible for keeping track of all
- files and maintaining their integrity). Example: "Some LOSER ran a
- program that did direct output to the disk instead of going through the
- file system and ended up raping the master directory".
-
- RAV (rav) noun.
- A Chinese appetizer known variously in the plural as Peking
- ravioli, dumplings, and potstickers. The term "rav" is short for
- "ravioli", which among hackers always means the Chinese kind rather
- than the Italian kind. Both consist of a filling in a pasta shell, but
- the Chinese kind uses a thinner pasta and is cooked differently, either
- by steaming or frying. A rav or dumpling can be steamed or fried, but a
- potsticker is always the fried kind (so called because it sticks to the
- frying pot and has to be scraped off). "Let's get hot-and-sour soup and
- three orders of ravs".
-
- RAVE verb.
- 1. To persist in discussing a specific subject.
- 2. To speak authoritatively on a subject about which one knows
- very little.
- 3. To complain (loud and long) to a person who is not in a
- position to correct the difficulty.
- 4. To purposely annoy another person verbally.
- 5. To proselytize (in a loose or metaphorical sense).
- Synonym: FLAME.
- This term was imported from WPI. It differs slightly from "flame"
- in that "rave" implies that it is the manner or persistence of speaking
- that is annoying, while "flame" implies somewhat more strongly that the
- subject matter is annoying as well.
-
- REAL USER noun.
- 1. A commercial user; one who is paying "real" money for his
- computer usage.
- 2. A nonhacker; someone using the system for an explicit purpose
- (such as a research project, or academic course-work). See USER.
- It is possible for one person to play different roles at different
- times. This is especially true of hackers who are also students. "I
- need this fixed so I can do a problem set. I'm not complaining out of
- RANDOMNESS, but as a real user".
-
- REAL WORLD, THE noun.
- 1. Those institutions at which people might use the word "pro-
- gramming" in the same sentence as "FORTRAN", "COBOL", "RPG", "IBM",
- etc.
- 2. Places where programs do such commercially necessary but
- intellectually uninspiring things as compute payroll checks and
- invoices.
- 3. To programmers (especially hackers), the location of non-
- -programmers and activities not related to programming.
- 4. A universe in which the standard dress is shirt and tie, and in
- which a person's working hours are defined as 9 to 5.
- 5. The location of the status quo.
- 6. Anywhere outside a university. Example: "Poor fellow, he's left
- MIT and gone into the real world".
- This term is used pejoratively by those not in residence there. In
- conversation, talking of someone who has entered the real world is not
- unlike talking about a deceased person.
-
- RIGHT THING, THE noun.
- That which is "obviously" the correct or appropriate thing to use,
- do, say, etc. Use of this term often implies that in fact reasonable
- people may disagree. Examples: "Never let your conscience keep you from
- doing the right thing!" "What's the right thing for LISP to do when
- computing a mod 0? Should it return a, or give a divide-by-zero
- error?".
-
- RPG (ahr'pee'jee) noun.
- 1. Report Program Generator, an extremely RUDE, BOGUS, and
- BLETCHEROUS programming language.
- 2. Richard P. Gabriel, a hacker at Stanford. See GABRIEL.
-
- RUDE adjective.
- 1. Badly written (said of programs).
- 2. Functionally poor, such as a program that is very difficult to
- use because of gratuitously poor (RANDOM?) design decisions.
- Antonym: CUSPY.
-
- SACRED adjective.
- Reserved for the exclusive use of something (this is a me-
- taphorical extension of the standard meaning). Often this means that
- anyone may look at the sacred object, but destroying it will cause a
- malfunction in whatever it is sacred to. Example: The comment "Register
- seven is sacred to the interrupt handler" appearing in a program would
- be interpreted by a hacker to mean that one part of the program, the
- "interrupt handler", uses register 87, and if any other part of the
- program changes the contents of register 7 there will be dire
- consequences. (This information would be useful to him if he had to
- change a program someone else had written it tells him that new code
- added to the program must avoid using register 7).
-
- SAGA noun.
- A CUSPY but BOGUS RAVING story dealing with N RANDOM BROKEN
- people.
- Here is an example of a saga:
-
- Jon L. White (login name JONL) and I (GLS) were office mates at
- MIT for many years, and worked together on the LISP language. One April
- we both flew from Boston to California for a week on research business,
- to consult face to face with some people at Stanford, particularly our
- common friend Richard P. Gabriel (RPG; see GABRIEL).
- RPG picked us up at the San Francisco airport and drove us back to
- Palo Alto (going LOGICAL SOUTH on Route 101, parallel the EL CAMINO
- BIGNUM). Palo Alto is adjacent to Stanford University, and about forty
- miles south of San Francisco. We ate at The Good Earth, a "health food"
- restaurant, very popular, the sort whose milkshakes all contain honey
- and protein powder. JONL ordered such a shake -- the waitress claimed
- the flavor of the day was "lalaberry". I still have no idea what that
- might be, but it became a running joke. It was the color of raspberry,
- and JONL said it tasted rather bitter. I ate a better tostada there
- than I have ever had in a Mexican restaurant.
- After this we went to the local Uncle Gaylord's Old Fashioned Ice
- Cream Parlor. They make ice cream fresh daily, in a variety of
- intriguing flavors. It's a chain, and they have a slogan: "If you don't
- live near an Uncle Gaylord's -- MOVE!". Also, Uncle Gaylord (a real
- person) wages a constant battle to force big-name ice cream makers to
- print their ingredients on the package (such as air and plastic and
- other non-natural garbage). JONL and I had first discovered Uncle
- Gaylord's the previous August when we had flown to a computer science
- conference in Berkeley, California, the first time either of us had
- been on the West Coast. When not in the conference sessions, we spent
- our time wandering the length of Telegraph Avenue, which, like Harvard
- Square in Cambridge, Massachusetts, in summer was lined with pic-
- turesque street vendors and interesting little shops. On that street we
- discovered Uncle Gaylord's Berkeley store. The ice cream there was very
- good. During that August visit, JONL went absolutely bananas (so to
- speak) over one particular flavor, ginger honey.
- Therefore, after eating at The Good Earth -- indeed, after every
- lunch and dinner and before bed during our April visit -- a trip to
- Uncle Gaylord's (the one in Palo Alto) was mandatory. We had arrived on
- a Wednesday, and by Thursday evening we had been there at least four
- times. Each time JONL would get ginger honey ice cream and proclaim to
- all bystanders that "Ginger was the spice that drove the Europeans mad!
- That's why they sought a route to the East! They used it to preserve
- their otherwise off-taste meat." After the third or fourth repetition,
- RPG and I were getting a little tired of this spiel, and we began to
- paraphrase him: "Wow! Ginger! The spice that makes rotten meat taste
- good!" "Say! Why don't we find some dog that's been run over and sat in
- the sun for a week and put some ginger on it for dinner?!" "Right! With
- a lalaberry shake!" And so on. This failed to faze JONL; he took it in
- good humor, as long as we kept returning to Uncle Gaylord's. He loves
- ginger honey ice cream.
-
- Now, RPG and his wife KBT (Kathy Tracy) were putting us up
- (putting up with us?) in their home for our visit, so to thank them
- JONL and I took them out to a nice French restaurant of their choosing.
- I unadventurously chose the filet mignon, and KBT had je ne sais quoi
- du jour, but RPG and JONL had lapin (rabbit). (Waitress: "Oui, we have
- fresh rabbit, fresh today." RPG: "Well, JONL, I guess we won't need any
- ginger!")
- We finished the meal late, about 11:00 PM, which is 2:00 AM Boston
- time, so JONL and I were rather droopy. But it wasn't yet midnight. Off
- to Uncle Gaylord's.
- Now, the French restaurant was in Redwood City, north of Palo
- Alto. In leaving Redwood City, we somehow got onto Route 101 going
- north instead of south. JONL and I wouldn't have known the difference
- had RPG not mentioned it. We still knew very little of the local
- geography. I did figure out, however, that we were headed in the
- direction of Berkeley, and I half-jokingly suggested that we continue
- north and go to Uncle Gaylord's in Berkeley.
- RPG said "Fine!" and we drove on for a while and talked. I was
- drowsy, and JONL actually dropped off to sleep for five minutes. When
- he awoke, RPG said, "Gee, JONL, you must have slept all the was over
- the bridge!" -- referring to the one spanning San Francisco Bay. Just
- then we came to a sign that said "University Avenue". I mumbled
- something about working our way over to Telegraph Avenue; RPG said
- "Right!" and maneuvered some more. Eventually we pulled up in front of
- an Uncle Gaylord's.
- I hadn't really been paying attention because I was too sleepy,
- and I didn't really understand what was happening until RPG let me in
- on it a few moments later, but I was just alert enough to notice that
- we had somehow come to the Palo Alto Uncle Gaylord's after all.
- JONL noticed the resemblance to the Palo Alto store, but hadn't caught
- on. He said, "This isn't the Uncle Gaylord's I went to in Berkeley! It
- looked like a barn! But this place looks just like the one back in Pale
- Alto!"
- RPG deadpanned, "Wee, this is the one I always come to when I'm in
- Berkeley. They've got two in San Francisco, too. Remember, they're a
- chain.
- JONL accepted this bit of wisdom. And he was not totally ignorant
- -- he knew perfectly well that University Avenue was in Berkeley, not
- far from Telegraph Avenue. What he didn't know was the there is a
- completely different University Avenue in Palo Alto.
- JONL went up to the counter and asked for ginger honey. The guy at
- the counter asked whether JONL would like to taste it first --
- evidently their standard procedure with that flavor, as not too many
- people like it.
- JONL said, "I'm sure I like it. Just give me a cone." The guy
- behind the counter insisted that JONL try just a taste first. "Some
- people think it tastes like soap." JONL insisted, "Look, I love ginger.
- I eat Chinese food. I eat raw ginger roots. I already went through this
- hassle with the guy back in Palo Alto. I know I like that flavor!"
- At the words "back in Palo Alto", the guy behind the counter got a very
- strange look on his face, but said nothing. KBT caught his eye and
- winked. Through my stupor I still hadn't quite grasped what was going
- on and thought RPG was rolling on the floor laughing and clutching his
- stomach just because JONL had launched into his spiel ("makes rotten
- meat a dish for a prince") for the forty-third time. At this point RPG
- clued me in fully.
- RPG, KBT and I retreated to a table, trying to stifle our
- chuckles. JONL remained at the counter, talking about ice cream with
- the guy b.t.c., comparing Uncle Gaylord's to other ice cream shops and
- generally having a good old time.
- At length the g.b.t.c. said, "You really like that stuff, huh?".
- JONL said, "Yeah, I've been eating it constantly back in Palo Alto for
- the past two days. In fact, I think that this batch is about as good as
- the cones I got back in Palo Alto!"
- G.b.t.c. looked him straight in the eye and said, "You're in Palo
- Alto!".
- JONL turned slowly around and saw the three of us collapse in a
- fit of giggles. He clapped a hand to his forehead and exclaimed, "I've
- been HACKED!".
-
- SEMI
- 1. (sem'ee) noun. The semicolon character ";". Example: "Commands
- to GRIND are prefixed by semi-semi-star" means that grind commands
- (whatever they are) begin with ";;*", not 1/4 of a star (*).
- 2. (sem'ee, sem'ie) Prefix with words such as "immediately", as a
- qualifier meaning "sort of" or "not really". Example: "When is the
- system coming up?" "Semi-immediately". (That is, maybe not for an
- hour).
- See CHARACTERS.
-
- SHIFT LEFT (RIGHT) LOGICAL verb.
- To move oneself to the left (right). To move out of the way. As an
- imperative, this implies "Get out of that (my) seat! You can move to
- that empty one to the left (right)."
- This term is used technically to describe the motions of in-
- formation bits in a computer register. Most computers have specific
- instructions with these names to perform such motions. The slang usage
- asks the listener to imagine that he is a BIT and to perform the
- appropriate motion. Other computer instructions, such as "rotate left"
- and EXCH, are also used in this way. The PDP-10 instruction that
- performs left-shifting is called LSH (lish), and so that word is
- sometimes used too.
-
- SHRIEK
- The exclamation point character "!".
- Synonyms: BANG, EXCL. See CHARACTERS.
-
- 69 adjective.
- A moderately large quantity. Example: "Go away, I have sixty-nine
- things to do before I GRONK OUT".
- Actually, any number less than 100 but large enough to have no
- obvious special properties will be recognized as a "large number".
- There is no denying that 69 is the local favorite. I don't know whether
- its origins are related to the obscene interpretation, but I do know
- that 69 decimal = 105 octal, and 69 hexadecimal = 105 decimal, which is
- a nice property.
-
- SLOP noun.
- 1. A one-sided FUDGE FACTOR, that is, an allowance for error but
- only in one of two directions. For example, if you need a piece of wire
- ten feet long and have to guess when you cut it, you make very sure to
- cut it too long -- by a large amount if necessary -- rather than too
- short by even a little bit. You can always cut off the "slop", but you
- can't paste it back on again. When discrete quantities are involved,
- slop is sometimes introduced to avoid the possibility of a FENCEPOST
- ERROR.
- 2. The ratio of the size or speed of code generated by a compiler
- to that of code carefully written by hand, minus one. Suppose that you
- have the choice to write a program in a so-called high-level language
- such as LISP or PASCAL, or to hand-craft it directly in machine
- language. (The advantage of the former is that you can write the
- program more easily; the advantage of the latter is that the program
- may be more efficient). Then the slop, as defined by the formula given
- above, is the amount of inefficiency in the final program because you
- used a compiler instead of hand-crafting it. This number is often used
- as a measure of the goodness of a compiler: slop below 5% is very good,
- and 10% is usually acceptable for most purposes.
- The second definition of "slop" is consonant with the first under
- the assumption that a compiler will never produce better code than a
- competent hacker. However, this assumption is not always valid. Recent
- software technology has produced compilers that sometimes produce
- better code than a good hacker because the hacker will get bored
- hand-crafting mountains of code and therefore be less TENSE than he
- could be. Compilers don't get bored.
-
- SLURP verb.
- To read a large data file entirely into the computer's main memory
- before beginning to work on it. (This may be contrasted with the
- strategy of reading a small piece at a time, processing it, and then
- reading the next piece.) Example: "This program slurps in a
- 1024-by-1024 matrix of numbers and than CRUNCHES them using an FFT
- (Fast Fourier Transform).
-
- SMART adjective.
- 1. Said of a program or other object that does THE RIGHT THING in
- a wide variety of complicated circumstances. There is a difference
- between calling a program smart and calling it intelligent; in
- particular, there do not exist any intelligent programs (although some
- researchers in artificial intelligence are working toward that goal).
- SMART TERMINAL noun. A terminal that has enough computing
- capability to perform useful work independent of the main computer.
-
-
- SMOKING CLOVER verb.
- A psychodelic color MUNCH due to Gosper (see GOSPERISM). This is a
- display HACK that produces a very strong optical illusion. A series of
- nested, wildly colored clover-leaf patterns appear on the screen and
- seem to expand in size indefinitely. When the program is stopped, the
- patterns are frozen; but because you have been watching them expand for
- a while, they suddenly seem to contract.
- The display changes with a speed that is awesome to anyone who is
- familiar with the computer hardware being used. This speed is made
- possible by a very clever programming technique. Also, the clover-leaf
- pattern is the non-obvious result of another program that is startingly
- simple. For both of these reasons, as well as for the illusion, smoking
- clover is a favorite HACK.
-
- SMOP (ess'em'oh'pee') noun.
- An acronym for "a Small Matter Of Programming". A piece of program
- code, not yet written, whose anticipated length is significantly
- greater than its intellectual complexity.
- This term is used to refer to a program that could obviously be
- written but is not worth the trouble. It is also used ironically to
- imply that a difficult problem can be easily solved because a program
- can be written to do it. The irony is that it is very clear that
- writing such a program will be a great deal of work. Example: "It's
- easy to change a FORTRAN compiler to compile COBOL as well; it's just a
- small matter of programming."
-
- SNAIL MAIL noun.
- Mail sent via the Postal Service rather than electronically,
- sometimes written as one word: SnailMail. At its worst, electronic mail
- usually arrives within half an hour. Compare that to the typical three
- days for SnailMail. If you ask a hacker for his mailing address, he
- will usually give you his network address for electronic mail. You have
- to say "What's you SnailMail address?" if you want to send him a
- package.
-
- SNARF (snahrf) verb.
- 1. To grab, especially a large document or file for the purpose of
- using it either with or without the owner's permission. Examples: "I
- snarfed the DDT manual from you desk last night". "This program snarfs
- all the file directories and searches for files named 'DELETE.ME'".
- SNARF DOWN. To snarf, sometimes with the connotation of absorbing,
- processing, or understanding. "I think I'll snarf down the list of DDT
- commands so I'll know what's changed recently".
-
- SOFTWARE ROT noun.
- A hypothetical disease the existence of which has been deduced
- from the observation that unused programs or FEATURES will stop working
- after sufficient time has passed even if "nothing has changed".
- Synonym: BIT DECAY.
-
- SOFTWARILY (sawft-war'-:l-ee) adverb.
- In a way pertaining to software. "The system is softwarily
- unreliable". Note: the adjective "softwary" is not used. See HARD-
- WARILY.
-
- SOS
- 1. (ess'oh-ess') noun. A LOSING text editor. Once, back in the
- 1960s, when a text editor was needed for the PDP-6, a hacker CRUFTED
- TOGETHER a quick-and-dirty "stopgap editor" to be used until a better
- one was written. Unfortunately, the old one was never really discarded
- when new ones came along. SOS is a descendant of that editor: SOS means
- "Son Of Stopgap". (Since then other programs similar in style to SOS
- have been written, notably BILOS (bye'lohss) the Brother-in-Law Of
- Stopgap).
- 2. (sahss) verb. To substract one from a number; to decrease the
- amount of something. This SOS means "Subtract One and do not Skip"; it
- is an antonym of AOS, named after a PDP-10 instruction.
-
- SPACE CADET KEYBOARD noun.
- A computer keyboard designed at MIT and used on special LISP
- computers. It has seven shifting keys: control, meta, hyper, super,
- shift, top and Greek. (See BUCKY BITS). There are six rows of keys
- instead of the usual four rows, and each row of keys is half again as
- wide as usual. It is jocularly called a "space cadet" keyboard because
- when sitting at it for the first time you feel like a junior space
- cadet at the control panel of a rocket ship: a little bit overwhelmed
- by all the controls.
-
- SPAZZ (spaz)
- 1. verb. To behave spastically or erratically; more often, to
- commit a single gross error. "I'm sorry I BROKE the LISP system last
- night. I was trying to fix that printing bug and must've spazzed
- royally".
- 2. noun. One who spazzes. "Boy, what a spazz!"
- 3. noun. The result of spazzing; spasticity. Example: "He forgot
- to make the routine that prints numbers handle negative numbers. In
- particular, trying to print -32768 gets an ILL MEM REF." "Boy, what a
- spazz!"
-
- SPLAT (splat) noun.
- 1. Name used in many places (DEC, IBM, and others) for the ASCII
- asterisk ("*") CHARACTER.
- 2. Name used by some people for the ASCII number-sign ("#")
- CHARACTER.
- 3. Name used by some people for the extended Stanford ASCII
- circle-x character. This character is also called "circle-x", "grinch",
- "blobby", and "FROB", among other names.)
- 4. Name for the semimythical extended Stanford ASCII circle-plus
- character.
- 5. The CANONICAL name for an output routine that outputs whatever
- the local interpretation of "splat" is.
- Nobody really agrees what character "splat" is, but the term is
- common. See CHARACTERS.
-
- SQUIGGLE (skwig':l), SQIGGLE (skig':l) noun.
- The character "~" (tilde). Synonym: TWIDDLE.
- SQUIGGLE BRACKETS noun. The brace characters "{" and "}".
- See CHARACTERS.
-
- STATE noun.
- Condition, situation. Examples: "What's the state of your latest
- hack?" "It's WINNING away." "The SYSTEM tried to read and write the
- disk simultaneously and got into at totally WEDGED state."
- A standard question is "What's your state?" which means "What are
- you doing?" or "What are you about to do?". Typical answers might be
- "I'm about to GRONK OUT" or "I'm hungry".
- Another standard question is "What's the state of the world?"
- meaning "What's new?" or "What's going on?".
-
- STOPPAGE (stahp':j) noun.
- Extreme LOSSAGE resulting in something (usually vital) becoming
- completely unusable. Example: "The recent system stoppage was caused by
- a FRIED transformer".
-
- SUPERPROGRAMMER noun.
- A prolific programmer; one who can code exceedingly well and
- quickly. Not all hackers are superprogrammers, but many are.
- Productivity can vary from one programmer to another by factors of
- as much as 1000. For example, one programmer might be able to write an
- average of 3 lines of working code in one day, while another, with the
- proper tools and skill, might be able to write 3000 lines of working
- code in one day. This variance is astonishing, appearing in very few
- other areas of human endeavor.
- Mark Crispin once reported, "While working at Stanford, I wrote
- the first 96-bit leader PDP-10 Network Control Program as my first
- monitor coding project. That took about two weeks, and at the time
- nobody believed I had accomplished it because someone on the East Coast
- had been working on it for over a year and still hadn't finished. I
- understand I rocked some boats when it was proven I had succeeded."
- The term "superprogrammer" is more commonly used within such
- places as IBM than in the hacker community. It tends to stress
- productivity rather than creativity or ingenuity. Hackers prefer the
- terms HACKER and WIZARD.
-
- SWAP verb.
- 1. To exchange; to trade places. See EXCH.
- 2. To move information from a fast-access memory to a slow-access
- memory (swap out), or vice versa (swap in). This is a technical term in
- computer science, and often specifically refers to the use of disks as
- "virtual memory". As pieces of data or program are needed, they are
- swapped into main memory for processing; when they are no longer needed
- for the nonce they are swapped out again. The slang use of these terms
- is as a fairly exact analogy referring to people's memories. Cramming
- for an exam might be spoken of as swapping in. If you temporarily
- forget someone's name but then remember it, your excuse is that it was
- swapped out. To "keep something swapped in" means to keep it fresh in
- your memory: "I reread the TECO manual every few months to keep it
- swapped in." If someone interrupts you just as you get a good idea, you
- might say, "Wait a moment while I write this down so I can swap it
- out", implying that if you don't write it down it will get swapped out
- (forgotten) as you talk.
-
- SYSTEM noun.
- 1. The supervisor program on the computer; the program that is
- responsible for coordinating the activities of the various users of the
- computer.
- 2. The entire computer system, including input/output devices, the
- supervisor program, and possibly other software.
- 3. Any large-scale program.
- 4. Any method or methodology.
- 5. The way things are usually done.
- 6. The existing bureaucracy. "You can't beat the system".
- SYSTEM HACKER noun. One who hacks the system (in sense 1 only; for
- sense 3 one mentions the particular program, as in LISP hacker or TECO
- hacker).
-
- T (tee)
- 1. A particular time. See TIME T. (The variable "T" is customarily
- used in physics to represent points in or quantities of time).
- 2. Yes. This word is used in reply to a question, particularly one
- asked using the "-P" convention. Example: "Foodp?" "T". That simple
- interchange means, "Do you want to come eat with us?" "Sure". See NIL.
- In the LISP language, the name "T" means "true", among other
- things. Some hackers use "T" and "NIL" instead of "yes" and "no" almost
- reflexively. This sometimes causes misunderstandings, when a waiter or
- flight attendant asks if a hacker wants coffee; but of course he will
- be brought a cup of tea instead. As it happens, most hackers like tea
- at least as well as coffee -- particularly those who frequent Chinese
- restaurants -- so it's not that big a problem.
-
- TALK MODEM
- A situation in which two or more terminals are logically linked
- together so that whatever is typed on the keyboard of any one appears
- on the screens of all. This is used for conversation via computer. See
- COM MODE and MODE.
-
- TASTE noun.
- 1. Aesthetic pleasance; the quality in programs which tends to be
- inversely proportional to the number of FEATURES, HACKS, CROCKS, and
- KLUGES programmed into it.
- TASTY adjective. Aesthetically pleasing; FLAVORFUL. Example: "This
- FEATURE comes in N tasty FLAVORS".
- Although "tasteful" and "flavorful" are essentially synonyms,
- "taste" and "flavor" are not. "Taste" refers to sound judgment on the
- part of the creator; a program or feature can exhibit taste but cannot
- "have" taste. On the other hand, a feature can have flavor. Also,
- "flavor" has the additional meaning of "kind" or "variety" not shared
- by "taste". "Flavor" is a more popular word among hackers than "taste",
- though both are used.
-
- TECO (tee'koh)
- 1. noun. A text editor developed at MIT and modified by just about
- everybody. If all the dialects are included, TECO might well be the
- single most prolific editor in use. Noted for its powerful
- pseudo-programming features and its incredibly hairy syntax. As an
- example, here is a TECO program that takes a list of names like this...
-
- Loser, J. Random
- Quux, The Great
- Dick, Moby
-
- ...sorts them alphabetically according to last name, and then puts
- the last name last, removing the comma, to produce this:
-
- Moby Dick
- J. Random Loser
- The Great Quux
-
- The program is:
-
- [1 J ^ P $ L $ $
- J <.-Z; .,(S,$ -D .)FXl @F ^ B $K :L I $ Gl L> $$
-
- In fact, this very program was used to produce the second, sorted,
- list from the first list! The manuscript for this book was produced
- using the EMACS editor, which is built on top of TECO and allows you to
- execute TECO programs. The first time I tried the program it had a BUG;
- I had accidentally omitted the "@" in front of "F ^ B", which, as
- anyone can see, is clearly THE WRONG THING. It worked fine the second
- time. There isn't space to describe all the features of TECO, but I
- will note that " ^ P" means "sort" and "J <.-Z; ... L>" is an idiomatic
- series of commands for "do once for every line".
- 2. verb. To edit using the TECO editor in one of its infinite
- forms; sometimes used to mean "to edit" even when not using TECO!
- Mark Crispin provided these historical notes:
-
- Historical note (1): DEC grabbed an ancient version of MIT TECO
- many years ago when it was still a TTY-oriented editor (that is, didn't
- make use of display screens). By now, TECO at MIT is highly dis-
- play-oriented and is actually a programming language for writing
- editors such as EMACS, rather than being used as an editor itself.
- Meanwhile, the outside world's various versions of TECO remain almost
- the same as the MIT version of 1970 or so. DEC recently tried to
- discourage its use, but an underground movement of sorts kept it alive.
-
- Historical note (2): Since note (1) was written, I found out that
- DEC tried to force their programmers by administrative decision to use
- a hacked-up and generally lobotomized version of SOS instead of TECO,
- and they revolted.
-
- TENSE adjective.
- Of programs, very clever and efficient. A tense piece of code
- often got that way because it was highly BUMMED, but sometimes it was
- just based on a great idea. As an example, this comment was found in a
- clever display routine by Mike Kazar, a student hacker at CMU: "This
- routine is so tense it will bring tears to your eyes. Much thanks to
- Craig Everhart and James Gosling for inspiring this HACK ATTACK."
- A tense programmer is one who produces tense code. They say that
- PDP-10 code flows from the pencil of hacker Bill Gosper in a maximally
- tense state. I don't waste my time trying to bum even one instruction
- from a PDP-10 program if I learn that Gosper wrote it.
-
- TENURED GRADUATE STUDENT noun.
- One who has been in graduate school for ten years (the usual
- maximum is five or six): a "ten-yeared" student. (Get it?) Students
- don't really get tenure, of course, the way professors do, but a
- tenth-year graduate student has probably been around the university
- longer than any nontenured professor.
-
- TERPRI (tur'pree, t:r'pree) verb.
- To output a CRLF; to terminate a line of text and start the next
- line.
- This comes from the name of the LISP routine that performs this
- action. It is a contraction of "TERminate PRInt line".
-
- THEORY noun.
- Any idea, plan, story, policy, or set of rules. This is a
- generalization and abuse of the technical meaning. Examples: "What's
- the theory on fixing this TECO loss?" "What's the theory on dinner
- tonight?" ("Chinatown, I guess.") "What's the current theory on letting
- LOSERS on during the day?" "The theory behind this change is to fix the
- following well-known screw..."
-
- THRASH verb.
- To move wildly or violently without accomplishing anything useful.
- The connotation is of a maximum of motion with a minimum of ef-
- fectiveness. Computer systems that are overloaded waste most of their
- time SWAPPING information between disk and memory rather than per-
- forming useful computation, and are therefore said to "trash". Someone
- who keeps changing his mind is said to be trashing.
-
- TIME T noun.
- A time or instant unspecified but understandable from context.
- Often used in conjunction with a later time, "T+1" or "T+N".
- Example: "We'll meet on campus at time T or at Louie's at time T
- plus one" means, in the context of going out for dinner, "If we meet at
- Louie's directly, we can meet there a little later than if we meet on
- campus and the have to travel to Louie's". (Louie's is a Chinese
- restaurant in Palo Alto that is a favorite with hackers. Louie makes
- the best potstickers I've ever tasted. See RAV). Had "thirty" been used
- instead of "one", it would have implied that the travel time from
- campus to Louie's is thirty minutes. Whatever time "T" is (and that
- hasn't been decided yet), you can meet half an hour later at Louie's
- than you could on campus and end up eating at the same time.
- SINCE (OR AT) TIME T EQUALS MINUS INFINITY. A long time ago; for
- as long as anyone can remember; at the time that some particular FROB
- was first designed. "That feature has been BROKEN since time T equals
- minus infinity".
- Sometimes the word "time" is omitted if there is no danger of
- confusing T as a time with T meaning "yes". See T.
-
- TOGGLE verb.
- To change a BIT from whatever state it is in to the other state:
- to change from 1 to 0 or from 0 to 1. This probably comes from "toggle
- switches", such as standard light switches -- though the word toggle
- apparently originally referred to the mechanism that keeps the switch
- in the position to which it is flipped, rather than to the fact that
- the switch has two positions.
- There are four things you can do to a bit: set it (force it to be
- 1), clear (or zero) it, leave it alone, or toggle it. (Mathematically,
- one would say that there are four distinct boolean-valued functions of
- one boolean argument, but saying that is much less fun than talking
- about toggling bits.)
-
- TOOL
- 1. verb. To work hard; to study; to "cram" for an exam. This is an
- antonym of sorts for HACK: "tooling" is working without enjoying it.
- The distinction is useful to hackers who are also students: tooling is
- programming or other work done for courses. Example: "I have to tool
- chemistry for a while before I GRONK OUT".
- 2. noun. A person who (seemingly) always tools and never hacks; a
- nerd (or nurd). This term is used throughout MIT: Students refer to
- themselves with more or less pride as "Tech tools".
-
- TRASH-80 noun.
- A Radio Shack TRS-80 personal computer.
- Hackers are accustomed to using powerful, million-dollar com-
- puters, and tend to look down a little on itty-bitty computers that
- can't deliver enough CYCLES for their purposes. This is not to say that
- personal computers can't be useful , or that some hackers don't enjoy
- working with them. Personal computers are getting better all the time.
- Observe, however, that many programs being sold for personal computers
- are developed on much larger computers that provide a better pro-
- gramming environment.
- The name "Trash-80" is used more as a play on the name of the
- product than as a judgment on the product as compared to its com-
- petitors. The term is used in good spirit by TRS-80 owners as well.
-
- TTY (tit'ee) noun.
- 1. A computers terminal of the Teletype variety, characterized by
- a noisy mechanical printer, a very limited character set, and poor
- print quality. This term is antiquated (like the TTYs themselves). The
- definition must be considered relative to modern terminals. In their
- heyday, TTYs were useful and fairly reliable workhorses.
- 2. Any computer terminal at all, especially the one that is
- controlling a computer program under discussion, or that the program
- can display information on. Example: "This program lists the current
- file directory on the TTY".
-
- TWEAK verb.
- To change slightly, relative to some reference point; to adjust
- finely. If a program is almost correct, rather than figuring out the
- precise problem you might just keep tweaking it until it works.
- Synonym: TWIDDLE. See also FROBNICATE and FUDGE FACTOR.
-
- TWENEX (twen'eks) noun.
- The TOPS-20 operating system distributed by DEC for the
- DECSYSTEM-20 computer, a successor to the PDP-10. There was an
- operating system for the PDP-10 called TOPS-10, so TOPS-20 is an
- obvious name for a DECSYSTEM-20 operating system, event though TOPS-20
- is nothing like TOPS-10. TOPS-10 was a typically CRUFTY operating
- system produced by DEC itself. The firm Bolt, Beranek and Newman (BBN)
- developed its own operating system, called TENEX (for "TEN EXecutive
- system"). DEC obtained the right to use TENEX and extended it to create
- TOPS-20. The term "TWENEX" is therefore a contraction of "twenty
- TENEX". DEC people tend to cringe when they hear TOPS-20 referred to as
- "TWENEX", but the term seems to be catching on nevertheless. The
- abbreviation "20x" is also used and also pronounced "TWENEX".
-
- TWIDDLE (twid':l)
- 1. noun. The tilde character "~". See CHARACTERS.
- 2. noun. A small and insignificant change to a program. A twiddle
- usually fixes one BUG and generates several new ones.
- 3. verb. To change something in a small way. BITS, for example,
- are often twiddled. Twiddling a switch or knob implies much less sense
- of purpose than TOGGLING or TWEAKING it: see FROBNICATE. To speak of
- twiddling a bit connotes aimlessness, and at best doesn't specify what
- you're doing to the bit; by contrast, toggling a bit has a more
- specific meaning.
-
- UP adjective.
- Working; in order. Example: "The Down escalator is up". Antonym:
- DOWN.
- BRING UP verb. To create a working version and start it. Examples:
- "They just brought up the system". "JONL is going to bring up a new
- LISP compiler tonight". Antonym: TAKE DOWN.
-
- USER noun.
- 1. Someone doing "real work" with the computer, who uses a
- computer as a means rather than an end. Someone who pays to use a
- computer. See REAL USER.
- 2. A programmer who will believe anything you tell him. One who
- asks silly questions. See LUSER.
- 3. Someone who uses a program from the outside, however skill-
- fully, without getting into the internals of the program. One who
- reports BUGS instead of just going ahead and fixing them.
- Basically, there are two classes of people who work with a
- program: there are implementors (HACKERS) and users (LOSERS). The users
- are looked down on by hackers to a mild degree because they don't
- understand the full ramifications of the SYSTEM in all its glory. (The
- few users who do are known as REAL WINNERS).
- The term is a relative one: A consummate hacker may be a user with
- respect to some program he himself does not hack. A LISP hacker might
- be one who maintains LISP or one who uses LISP (but with the skill of a
- hacker). A LISP user is one who uses LISP, whether skillfully or not.
- Thus there is some overlap between the two terms; the subtle
- distinctions must be resolved by context.
- It is true that users ask questions (of necessity). Sometimes they
- are thoughtful or deep. Very often they are annoying or downright
- stupid, apparently because the user failed to think for two seconds or
- to look in the documentation before bothering the maintainer.
-
- VANILLA adjective.
- Standard, usual, of ordinary FLAVOR. "It's just a vanilla
- terminal; it doesn't have any interesting FEATURES".
- When used of food, this term very often does not mean that the
- food is flavored with vanilla extract! For example, "vanilla-flavored
- wonton soup" (or simply "vanilla wonton soup") means ordinary wonton
- soup, as opposed to hot-and-sour wonton soup.
- This word differs from CANONICAL in that the latter means "the
- thing you always use (or the way you always do it) unless you have some
- strong reason to do otherwise", whereas "vanilla" simply means
- "ordinary". For example, when MIT hackers go to Colleen's Chinese
- Cuisine, hot-and-sour wonton soup is the canonical wonton soup to get
- (because that is what most of them usually order) even though it isn't
- the vanilla wonton soup.
-
- VAXEN (vaks':n)
- The plural usually used among hackers for the DEC VAX computers.
- "Our installation has four PDP-10's and twenty vaxen".
- The DEC operating system for the VAX is called VMS (for Virtual
- Memory System). It has its advantages, but sometimes it seems to run
- rather slowly. Hence this limerick:
-
- There once was a system called VMS
- Of cycles by no means abstemious
- It's chock-full of hacks
- And runs on a VAX
- And makes my poor stomach all squeamious.
-
- -- The Great QUUX
-
- VIRTUAL adjective.
- Performing the functions of. Virtual memory acts like real memory
- but isn't. (A virtual memory system uses a combination of a small main
- memory plus a magnetic disk to give the illusion that a computer has a
- large main memory and the disk as needed).
- The term is synonymous with LOGICAL, except that "virtual" is
- never used with compass directions.
-
- VISIONARY noun.
- One who HACKS vision, in the sense of an artificial intelligence
- researcher working on the problem of getting computers to "see" things
- using TV cameras. (There isn't any problem in sending information from
- a TV camera to a computer. The problem is, how can the computer be
- programmed to make use of the camera information? See SMOP).
-
- WALL interjection.
- An indication of confusion, usually spoken with a quizzical tone.
- "Wall?" A request for further explication.
- This seems to be a shortened form of "Hello, wall", apparently
- from the phrase "up against a blank wall". This term is used primarily
- at WPI.
-
- WALLPAPER noun.
- A program listing or, especially, a transcript of all or part of a
- login session, showing everything that ever appeared on the terminal.
- (The idea was that the LPT paper for such listings was essentially good
- only for wallpaper to cover windows to keep the light out).
- WALLPAPER FILE noun. The file that contains the wallpaper
- information before it is actually printed on paper. (Sometimes you
- don't intend ever to produce a real paper copy of the file, because you
- can look at the file directly on your terminal, but it is still called
- a "wallpaper file").
- This term is used infrequently nowadays, especially since other
- SYSTEMS have developed other terms for the concept (for example: PHOTO
- on TWENEX). This term possibly originated on the ITS system at MIT,
- where the commands to begin and end transcript files are still
- ":WALBEG" and ":WALEND", which produce a file named "WALL PAPER".
-
- WEDGED adjective.
- 1. To be stuck, incapable of proceeding without help. This is
- different from having CRASHED. If the system has crashed, then it has
- become totally nonfunctioning. If the system is "wedged", it is trying
- to do something but cannot make progress. It may be capable of doing a
- few things, but not be fully operational. For example, the system may
- become wedged if the disk controller FRIES; there are some things you
- can do without using the disks, but not many. Being wedged is slightly
- milder than being "hung". This term is sometimes used as a synonym for
- DEADLOCKED. See also HANG, LOSING, CATATONIA, and BUZZ.
- 2. Of a person, suffering severely from misconceptions. Example:
- "He's totally wedged -- he's convinced that he can levitate through
- meditation". "I'm sorry. I had a BIT set that you were responsible for
- TECO, but I was wedged".
- WEDGITUDE (wedj'i-tood). The quality or state of being wedged.
-
- WHEEL noun.
- 1. A "privilege" BIT that, when set, CANONICALLY allows the
- possessor to perform any operation whatsoever on a timesharing system,
- such as read or write any file on the system regardless of protections,
- change or look at any address in the running monitor, CRASH or reload
- the SYSTEM, and kill or create jobs and USER accounts. The term was
- invented on the TENEX operating system and carried over to TOPS-20 and
- others. See TWENEX.
- 2. A person who possesses a set wheel bit (and who therefore has
- great privilege and power on that system). "We need to find a wheel to
- unwedge the hung tape drives".
- WHEEL WARS. A period during which student wheels HACK each other
- by attempting to log each other our of the system, delete each other's
- files, or otherwise wreak havoc -- usually at the expense of the lesser
- USERS.
-
- WIN
- 1. verb. To succeed. A program wins if no unexpected conditions
- arise. Antonym: LOSE.
- 2. noun. Success, or a specific instance thereof. A pleasing
- outcome. A FEATURE. Emphatic forms: MOBY win, super win, hyper-win. For
- some reason "suitable win" is also common at MIT, usually in reference
- to a satisfactory solution to a problem. Antonym: LOSS.
- BIG WIN noun. The results of serendipity.
- WIN BIG verb. The experience serendipity. "I went shopping and won
- big; there was a two-for-one sale".
- WIN, WIN interjection.
- WINNER noun. An unexpectedly good situation, program, programmer,
- or person. Albert Einstein was a winner. Antonym: LOSER.
- REAL WINNER noun. This term is often used sarcastically, but is
- also used as high praise.
- WINNAGE (win':j) noun. The situation when a LOSSAGE is corrected
- or when something is winning. Quire rare. Usage: also quite rare.
- WINNITUDE (win':-tood) noun. The quality of winning (as opposed to
- WINNAGE, which is the result of winning).
-
- WIZARD noun.
- 1. A person who knows how a complex piece of software or hardware
- works (that is, who GROKS it); someone who can find and fix BUGS
- quickly in an emergency. This term differs somewhat from HACKER.
- Someone is a hacker if he has general hacking ability, but is only a
- wizard with respect to something if he has specific, detailed knowledge
- of that thing. A good hacker could become a wizard of something, given
- the time to study it.
- 2. A person who is permitted to do things forbidden to ordinary
- people. For example, an Adventure wizard at Stanford may play the
- Adventure game during the day, which is forbidden (the program simply
- refuses to play) to most people because it uselessly consumer to many
- CYCLES.
- WIZARDLY adjective. Pertaining to wizards. A wizardly FEATURE is
- one that only a wizard could understand or use properly.
-
- WOW
- The exclamation point character "!". Synonyms: BANG, EXCL, SHRIEK.
- See CHARACTERS.
-
- WRONG THING, THE noun.
- The opposite of THE RIGHT THING; more generally, anything that is
- not the right thing. In cases where "the good is the enemy of the
- best", the merely good, while good, is nevertheless the wrong thing.
-
- XOR (eks'ohr) conjunction.
- Exclusive or. "A xor B" means "A or B, but definitely not both".
- Example: "I want to get cherry pie xor a banana split". This derives
- from the technical use of the term as a function on truth-values that
- is true if either of two arguments is true but not both.
-
- XYZZY (eks'wie'zee'zee'wie, zi'zee)
- The CANONICAL "magic word". This comes from the Adventure game, in
- which the idea is to explore an underground cave with many rooms to
- collect treasure. If you type XYZZY at the appropriate time, you can
- move instantly between two otherwise distant points.
- If, therefore, you encounter some bit of MAGIC, or more precisely
- some technique for accomplishing magic, you might remark on this quite
- succinctly by saying simply "XYZZY!". This may be translated roughly as
- "Wow! Magic!" Example: "Ordinarily you can't look at someone else's
- screen if he has protected it, but if you type quadruple-bucky-CLEAR
- the system will let you do it anyway" "XYZZY!".
-
- YOYO MODE noun.
- A state in which the system is said to be when it rapidly
- alternates several times between being UP and being DOWN.
-
- YU-SHIANG WHOLE FISH (yoo'hsyang', yoo'shang') noun.
- The Greek letter lower-case gamma when written with a loop in its
- tail, making it look like a little fish swimming down the page. The
- term is actually the name of a Chinese dish in which a fish is cooked
- whole (not PARSED) and covered with Yu Shiang sauce. This bit of slang
- is used primarily by people on the MIT LISP Machine computers, which
- can display this character on their screens. The term also tends to
- elicit incredulity from people who hear about it secondhand. See
- CHARACTERS.
-
- ZAP
- 1. noun. Spiciness.
- 2. verb. To make food spicy.
- 3. verb. To make someone "suffer" by making his food spicy. (Most
- hackers love spicy food. Hot-and-sour soup is wimpy unless it makes you
- blow your nose for the rest of the meal).
- ZAPPED adjective. Of food, spicy. "Watch out -- than bean curd disk is
- really zapped tonight". Of people, wiped out of GRONKED because of
- eating spicy food. "I ate the bean curd and got totally zapped. I used
- up two boxes of Kleenex. It was great."
- This term is used to distinguish between food that is hot (in
- temperature) and food that is "hot", that is, spicy. For example, the
- Chinese appetizer Bon Bon Chicken is a kind of chicken salad that is
- cold but zapped.
- Hacker Bill Gosper has one of the highest tolerances for zapped
- food. He frequently eats at Louie's, a Chinese restaurant in Palo Alto
- (actually called "Hsi Nan", but hackers who know the owner refer to it
- simply as Louie's); and Louie will frequently try to out-zap him. When
- he does, you don't want to get caught in the cross fire. The food is
- absolutely delicious, but you would think that the sauce contains
- nitric acid.
-
- ZERO verb.
- 1. To set to zero. Usually said of small pieces of data such as
- BITS or words.
- 2. By extension, to erase; to discard all data from. Said of disks
- and directories, where "zeroing" need not involve actually writing
- zeroes throughout the area being zeroed. One may speak of something
- being LOGICALLY zeroed (forgotten) rather than being physically zeroed
- (erased).
-
- ZORCH (zorch)
- 1. verb. To move quickly, like a rocket ship training fire behind
- it. "This file transfer program is very fast; it really zorches those
- files through the network".
- 2. noun. Influence, "brownie points"; that intangible and fuzzy
- currency in which favors are measured. "I'd rather not ask him for that
- just yet; I think I've used up my quota of zorch with him for the
- week".
- 3. noun. Energy of ability. "I guess I'll PUNT fixing that bug
- until tomorrow. I've been up for thirty hours and I've run out of
- zorch".
-
- About the Authors
-
- GLS (gliss) Guy L. Steel Jr.
- I earned my A.B. degree (1975) in applied mathematics at Harvard
- College, and my S.M. (1977) and Ph.D. (1980) degrees in computer
- science and artificial intelligence at MIT. Since 1980 I have been an
- assistant professor of computer science at Carnegie-Mellon University,
- now on leave. Now I am a Senior Scientist at Tartan Laboratories,
- Incorporated. I have been hacking computers for fifteen years. I am
- married to another hacker, Barbara K. Steele, and we have two children.
- I enjoy cooking Chinese food, doing carpentry, cartooning, singing, and
- playing piano and guitar. But for real fun, nothing can beat an
- all-night hack session, preferably writing hairy TECO code for EMACS.
- Synonym: QUUX.
-
- DON (dahn) Donald R. Woods.
- My father got me interested in computers at the age of 11, back
- when that was still unusual. One of my very first hacks earned me $50
- when his company decided to use it as a demonstration at one of the
- trade fairs. I studied electrical engineering at Princeton (B.S.E.,
- 1975), mainly because they didn't have an undergraduate computer
- science program. Then I came out to Stanford where, after the obli-
- gatory dawdling and hacking, I contrived to earn a Ph.D. (1981) in
- computer science. By that time I was working for the Xerox Corporation,
- and I've been there ever since. Besides contributing to the "jargon
- file", I'm probably best known as coauthor (with Jim Lyon) of the
- INTERCAL Programming Language Reference Manual, and as one of the
- primary authors of the original Adventure program.
-
- RF (ahr'eff) Raphael A. Finkel.
- I received an A.B. degree in mathematics and an M.A.T. degree in
- teaching from the University of Chicago in 1972, and in 1976 a Ph.D.
- degree in computer science from Stanford University. I am now an
- associate professor in the Department of Computer Science, University
- of Wisconsin, Madison. Teaching is important to me, and I have received
- two teaching awards: the Sperry Univac 1979-1980 Computer Science
- Professor of the Year Award, and a 1981 University Distinguished
- Teaching Award. My research is in the general area of distribute
- algorithms; in particular, I have built several distributed operating
- systems. Outside of work, I enjoy studying Judaica (Mishna, Gemorra,
- and Yiddish) and playing piano. I don't hack much any more.
-
- MRC (murk, m:rc) Mark R. Crispin.
- I earned my B.S. degree (1977) in Technology and Society at
- Stevens Institute of Technology. Since graduating I have been a systems
- programmer at the Computer Science Department at Stanford University.
- I'm married to hacker and aspiring broadcasting personality Lynn Ann
- Gold; my BMW 320i's license plate is California ILVLYNN. Besides
- hacking, we ice skate, ski, go to punk rock concerts, collect science
- fiction artwork, and are dragon lovers and ardent bad movie fanatics.
- One recent thrill was seeing Plan Nine from Outer Space, the winner of
- the Golden Turkey award at the "worst movie ever made" (I agree with
- that assessment). We have several home computers, one of which runs an
- X-rated electronic bulletin-board system popular with many of the
- perverts in the San Francisco Bay Area.
-
- RMS (ahr'em'ess) Richard M. Stallman.
- I was built at a laboratory in Manhattan around 1953, and moved to
- the MIT Artificial Intelligence lab in 1971. My hobbies include
- affection, international folk dance, flying, cooking, physics,
- recorder, puns, science fiction fandom, and programming; I magically
- get paid for doing the last one. About a year ago I split up with the
- PDP-10 computer to which I was married for the years. We still love
- each other, but the world is taking us in different directions. For the
- moment I still live in Cambridge, Massachusetts, among our old
- memories. "Richard Stallman" is just my mundane name; you can call me
- "RMS".
-
- GFF (jef) Geoffrey S. Goodfellow.
- I've been a hacker ever since I ran into a model-33 TTY connected
- at the lightning speed of 110 bps between my seventh grade school and a
- PDP-10 running TENEX at Stanford University. Since my introduction to
- the world of hacking, formal education has held no allure for me. Two
- weeks into the final quarter of my senior year of high school, I
- dropped out and accepted a job at SRI International in Menlo Park,
- California. I have not returned to class since I flushed school and
- have no degree of any type to my name. Today, my most productive
- hacking is accomplished at my residence where I'm connected up to an
- ersatz PDP-10, a Foonly-4, running TENEX in SRI's computer science lab
- via a 9600 bps leased line. Professionally, my interests are primarily
- computer packet-switched networks, security, office automation,
- electronic mail, cellular radio, and mobile communications.
- Nonprofessionally, I like to hack, travel, eat out at fine restaurants,
- collect cars, and watch an occasional movie on my 6-foot projection TV.
-
-